如何使用jsf和ajax验证帐户而不转移到另一个页面
我想登录,但不转移到另一个页面。当点击登录按钮或链接时,它会将用户名和密码的值传递给服务器,然后验证数据库中的帐户。如果此帐户不存在,我希望显示警报或消息。如何实现?有人告诉我应该使用ajax,但是如何使用呢?谢谢 以下是jsf代码示例:如何使用jsf和ajax验证帐户而不转移到另一个页面,ajax,jsf,facelets,Ajax,Jsf,Facelets,我想登录,但不转移到另一个页面。当点击登录按钮或链接时,它会将用户名和密码的值传递给服务器,然后验证数据库中的帐户。如果此帐户不存在,我希望显示警报或消息。如何实现?有人告诉我应该使用ajax,但是如何使用呢?谢谢 以下是jsf代码示例: <h:form> <h:inputText id="username" required="true" value="#{loginManagedBean.username}" /> &
<h:form>
<h:inputText id="username" required="true"
value="#{loginManagedBean.username}" />
<h:inputSecret id="password" required="true"
value="#{loginManagedBean.password}" />
<h:commandLink type="submit"
id="login_button" value="Sign In" />
</h:form>
对不起,我忘了。我使用最新版本的jsf。您可以更改视图代码以添加ajax功能:
<h:form id="loginform">
<h:panelGroup rendered="#{not loginManagedBean.isLogged}">
<h:inputText id="username" required="true" value="#{loginManagedBean.username}" />
<h:inputSecret id="password" required="true" value="#{loginManagedBean.password}" />
<h:commandLink id="login_button" value="Sign In">
<f:ajax listener="#{loginManagedBean.onButtonLoginClick}" render="loginform" />
</h:commandLink>
</h:panelGroup>
<h:panelGroup rendered="#{loginManagedBean.isLogged}">
<h:commandLink id="logout_button" value="Sign Out">
<f:ajax listener="#{loginManagedBean.onButtonLogoutClick}" render="loginform" />
</h:commandLink>
</h:panelGroup>
</h:form>
注意:您还可以添加登录错误消息并用
显示它们
更多信息:
您使用的是哪个版本的JSF?哦,我忘了。我使用的是最新版本。
@ManagedBean
@RequestScoped
public class LoginManagedBean
{
private String username;
private String password;
public void setUsername(String username)
{
this.username = username;
}
public String getUsername()
{
return this.username;
}
public void setPassword(String password)
{
this.password = password;
}
public String getPassword()
{
return this.password;
}
public boolean getIsLogged()
{
return false;// change to verify in session if logged
}
public void onButtonLoginClick(AjaxBehaviorEvent event)
{
// Do the login stuff verification, put your user in session, etc
}
public void onButtonLogoutClick(AjaxBehaviorEvent event)
{
// Do the logout stuff verification, remove your user in session, etc
}
}