我制作简单的登录页面和页面AddNewStuff。我有条件只能使用admin / admin登录/密码。如果正确,某些函数必须将我们重定向到AddNewStuff并将消息“Hello”。我现在拥有的:
<h:form>
<p:growl id="growl" showDetail="true" />
<h:panelGrid columns="2" cellpadding="5">
<p:outputLabel for="username" value="Username:" />
<p:inputText id="username" value="#{userLoginView.username}"
required="true" label="username" autocomplete="off"/>
<p:outputLabel for="password" value="Password:" />
<p:password id="password" value="#{userLoginView.password}"
required="true" label="password" />
</h:panelGrid>
<p:commandButton value="Login" update="growl" ajax="false"
action="#{userLoginView.login}" />
</h:form>
登录的登录部分
public String login() {
if (username != null && username.equals("admin") && password != null && password.equals("admin")) {
FacesContext.getCurrentInstance().addMessage(null,
new FacesMessage(FacesMessage.SEVERITY_WARN, "Hello",""));
return "login.xhml";
} else {
FacesContext.getCurrentInstance().addMessage(null,
new FacesMessage(FacesMessage.SEVERITY_WARN, "Invalid Login!", "Please Try Again!"));
}
return "addNewStuff.xhtml";
}
这是检查我们输入的部分。
为什么重定向不起作用?它可以工作,如果我只是在登录时将重定向放入commandButton,但是如何进行身份验证?