Я новичок в JSF и RichFaces. У меня есть кнопка, которая должна вызывать метод для bean-компонента. Когда я используюa4j: commandButton не работает
<h:commandButton action="#{loginBean.userLogin}" value="Login" />
это работает отлично, но когда я нажимаю на
<a4j:commandButton action="#{loginBean.userLogin}" value="Login" />
ничего не происходит.
Мой код боб:
public class LoginBean {
@Size(min = 2, max = 20, message = "Must be betwen 2 and 20 chars")
private String login;
@Size(min = 1, message = "Please Enter your password")
private String password;
//getters and setters
public String userLogin() {
//user login code
}
}
код Моя страница JSP:
<body>
<f:view>
<div >
<h:form id="loginForm">
<h:panelGrid columns="3">
<h:outputLabel for="login" value="Login:" />
<h:inputText id="login" value="#{loginBean.login}" >
</h:inputText>
<rich:message for="login" />
<h:outputLabel for="password" value="Password:" />
<h:inputSecret id="password" value="#{loginBean.password}" />
<rich:message for="password" />
</h:panelGrid>
<div>
<h:commandButton action="#{loginBean.login}" value="Login" />
<a4j:commandButton action="#{loginBean.login}" value="Login" />
</div>
<div>
<a href="<%= request.getContextPath() %>/registration.jsf">Registration</a>
</div>
</h:form>
</div>
</f:view>
</body>
Так как вы можете видеть, что я даже добавил две кнопки. Один работает отлично, а второй ничего не делает.
UPD: Сначала я не использовал RichFaces, и мое приложение отлично работало. Поэтому я предполагаю, что правила навигации и т. Д. В порядке. То, что не работает, - это a4j: commandButton, который я только что добавил.
UPD2: Вот моя web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" version="2.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name>webappsaichuk</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<listener>
<listener-class>com.sun.faces.config.ConfigureListener</listener-class>
</listener>
Вы можете добавить свой код бэкбона? –
добавлен bean-код и код страницы –
обновлен мой ответ –