我有一个简单的表单方法......
<form method="POST" action="j_security_check">
<table>
<tr>
<td>Name:</td>
<td><input type="text" name="j_username" /></td>
</tr>
<tr style="margin-top: 10px;">
<td>Password:</td>
<td><input type="password" name="j_password" /></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Go" /></td>
</tr>
</table>
</form>
此页面位于login.xhtml
。
当用户输入错误的信息时,它会将我重新路由到j_security_check.html
,当它发生时,它会丢失所有的样式。有办法解决这个问题吗?
显示登录资源:
<login-config>
<auth-method>CLIENT-CERT,FORM</auth-method>
<form-login-config>
<form-login-page>/login.seam</form-login-page>
<form-error-page>/login.seam</form-error-page>
</form-login-config>
</login-config>
此外,可访问的数据是:
<security-constraint>
<web-resource-collection>
<web-resource-name>Accessible Data</web-resource-name>
<url-pattern>/login</url-pattern>
<url-pattern>/a4j/*</url-pattern>
<url-pattern>/css/*</url-pattern>
<url-pattern>/img/*</url-pattern>
</web-resource-collection>
</security-constraint>
当我查看视图源时,似乎登录页面源已加载所有CSS和属性,但j_security_check
页面没有。
有什么想法吗?
答案 0 :(得分:0)
表单上的action="j_security_check"
属性保证他提交按钮会将您发送到j_security_check。您可能想要做的是让j_security_check的处理程序重定向回login.xhtml
,让用户再次尝试输入凭据。
答案 1 :(得分:0)
http://www.coderanch.com/t/448131/JSF/java/forms-authentication-security-check-JSF有答案
如果您正在执行j_Security_check
,则无法使用JSF设置页面样式