我已经成功运行了一个基于FORM的身份验证项目,并尝试使用icefaces项目。换句话说,我想使用ice:form而不是form,所以我想知道我是否可以将登录请求重定向到托管bean中的j_security_check:
public void myMethod(ActionEvent e){
//some code that redirects to j_security_check
}
并在我的登录页面中:
<ice:commandButton value="login" ActionListener="#{myBean.myMethod}"/>
但我真的不知道怎么做,我真的找不到关于j_security_check的文档以及它是如何工作的。
答案 0 :(得分:0)
您可以使用包含action="j_security_check"
的表单,其中包含文本字段或包含用户名和密码的隐藏字段。您可以将这些字段绑定到托管bean中的变量。您可以使用表单中的提交按钮,而不是<ice:commandButton>
。
如果必须使用<ice:commandButton>
,可以使用Javascript发送“myform.submit()”脚本:
public void myMethod(ActionEvent e)
{
//Some other code...
JavascriptContext.addJavascriptCall(
FacesContext.getCurrentInstance(), "document,forms.myForm.submit()");
}
您还可以使用JavascriptContext.addJavascriptCall()
方法在Javascript中动态创建表单元素,分配用户名/密码值并提交它