2013-05-30 4 views
1

Я использую JSF 2 на Jboss AS 7. Я хотел бы использовать некоторый код, чтобы решить, какую домашнюю страницу (/) показывать. У меня есть сервлет (/ homePage), который может отображать правильную страницу, поэтому, если я перейду в/homePage /, он работает хорошо, но я хотел бы иметь возможность сделать это на/url. Как настроить страницу приветствия на использование сервлета, а не страницы?Динамический приветственный файл в JSF2

Я попытался создать сервлет, который прослушивает весь запрос, и отобразить правильную страницу - это запрос (/), но JSF, похоже, пытается разрешить приветственный файл перед сервлетами.

Я понимаю, что могу просто перенаправить с домашней страницы (index.xhtml) на/homePage, но это добавляет еще пару раундов для браузера и делает URL-адрес уродливым.

Благодарим за помощь!

Update .... вот это сервлет, который никогда не называют

@WebServlet("/homePage") 
public class HomePageServlet extends HttpServlet { 
    @Override 
    protected void service(HttpServletRequest request, 
      HttpServletResponse response) throws ServletException, IOException { 
      System.out.println("----------HOME PAGE SERVLET CALLED"); 
      RequestDispatcher dispatcher = null; 
      dispatcher = request.getRequestDispatcher(HOME_PAGE1); 
      dispatcher.forward(request, response); 
    } 
} 

и вот мой web.xml приветствуется список файлов

<welcome-file-list> 
    <welcome-file>/homePage</welcome-file> 
</welcome-file-list> 

браузер получает 404 и «- -------- HOME PAGE SERVLET CALLED "никогда не печатается.

+0

Не мог бы вы показать, какую конфигурацию вы использовали для вашего сервлета? –

ответ

0

Вы можете просто установить <welcome-file> на URL сервлета.

E.g.

<welcome-file>/index</welcome-file> 

с

@WebServlet("/index") 
+0

Balus, спасибо за ответ, но, к сожалению, он, похоже, не работает. Я очистил все несвязанные фильтры/сервлеты, а теперь просто @WebServlet («/ homePage») и /homePage, но сервер возвращает 404, а сервлет никогда не называется. Это фактически работало на Jboss 6 с JSF 1.2 и швом, но не на Jboss 7 с JSF2. – Mason

Смежные вопросы