如何使用faces servlet映射设置JSF2 <welcome-file>?

oid*_*man 20 java-ee-6 jsf-2

我有一个使用Facelets的简单JSF2应用程序.我的web.xml设置如下: -

<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping> 
Run Code Online (Sandbox Code Playgroud)

我想将应用程序默认设置为欢迎页面/pages/login.xhtml.在转到浏览器中的上下文根目录时,我似乎无法获得欢迎文件设置.

我的web.xml欢迎设置如下: -

<welcome-file-list>
<welcome-file>/pages/login.jsf</welcome-file>
</welcome-file-list>
Run Code Online (Sandbox Code Playgroud)

如何强制欢迎页面转到登录页面并确保它通过faces servlet?

如果我使用以下页面显示页面,但它没有通过面部servlet,因此面部组件不会呈现: -

<welcome-file-list>
<welcome-file>pages/login.xhtml</welcome-file>
</welcome-file-list>
Run Code Online (Sandbox Code Playgroud)

任何帮助赞赏!

Bri*_*hem 23

您必须在login.xhtml文件旁边创建一个空的login.jsf文件.出于某种原因,需要这个hack来诱骗servlet容器认为你的欢迎文件存在.

注意:提供的响应仍然是使用login.xhtml文件的JSF响应,而不是您创建的空login.jsf文件.

  • 感谢编辑BalusC - 我回答了我期待的问题,而不是我正在阅读的问题! (3认同)