我在安全约束上遇到了 ajax 重定向这个奇怪的问题:
当我的会话超时后在角色安全页面上进行 ajax 调用(通过单击可排序p:dataTable
列或触发时)时,屏幕上会显示来自 OmniFaces 的 XML。p:poll
<partial-response><redirect-url=...
当我删除 OmniFaces 时,ajax 调用似乎静默失败,并且没有显示 XML。
安全性在 web.xml 中配置如下:
<security-constraint>
<web-resource-collection>
<web-resource-name>Pages</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>user</role-name>
</auth-constraint>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>Resources</web-resource-name>
<url-pattern>/javax.faces.resource/*</url-pattern>
</web-resource-collection>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<realm-name>myRealm</realm-name>
<form-login-config>
<form-login-page>/login.xhtml</form-login-page>
<form-error-page>/login.xhtml?error=true</form-error-page>
</form-login-config>
</login-config>
<security-role>
<role-name>user</role-name>
</security-role>