我的 web.xml 中有这个:
<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>/login_page.xhtml</form-login-page>
</form-login-config>
</login-config>
login_page.xhtml 有一些 jsf 代码,当 jboss 重定向到他时,这些代码不会呈现。
我如何使用jsf代替<form-login-page>
内的html页面?
最佳答案
JSF 工作由 FacesServlet
完成.
您需要确保 URL 与 <url-pattern>
匹配FacesServlet
的。鉴于您的问题,您似乎没有将其映射到 *.xhtml
的简单 URL 模式上。 ,但在其他方面,例如 *.jsf
, *.faces
或/faces/*
。然后,您应该更改 URL,使其与该 URL 模式完全匹配。
想象一下它是 *.jsf
,那么您需要将其更改为:
<form-login-page>/login_page.jsf</form-login-page>
但是,更简单的方法是仅映射 FacesServlet
上*.xhtml
。这样您就永远不需要摆弄虚拟 URL。
<url-pattern>*.xhtml</url-pattern>
另请参阅:
关于java - 如何在jboss 7.1中使用jsf表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14900996/