web.xml
<?
xml version="1.0" encoding="UTF-8"
?>
< web-app version ="2.4"
xmlns ="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation ="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >
< 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 > *.faces </ url-pattern >
</ servlet-mapping >
< welcome-file-list >
< welcome-file > index.jsp </ welcome-file >
</ welcome-file-list >
</ web-app >
< web-app version ="2.4"
xmlns ="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation ="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >
< 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 > *.faces </ url-pattern >
</ servlet-mapping >
< welcome-file-list >
< welcome-file > index.jsp </ welcome-file >
</ welcome-file-list >
</ web-app >
face-config.xml
<?
xml version="1.0"
?>
<! DOCTYPE faces-config PUBLIC
"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
"http://java.sun.com/dtd/web-facesconfig_1_0.dtd" >
< faces-config >
< application >
< locale-config >
< default-locale > en </ default-locale >
< supported-locale > zh_CN </ supported-locale >
</ locale-config >
</ application >
< navigation-rule >
< from-view-id > /index.jsp </ from-view-id >
< navigation-case >
< from-outcome > success </ from-outcome >
< to-view-id > /welcome.jsp </ to-view-id >
</ navigation-case >
< navigation-case >
< from-outcome > failure </ from-outcome >
< to-view-id > /index.jsp </ to-view-id >
</ navigation-case >
</ navigation-rule >
< managed-bean >
< managed-bean-name > user </ managed-bean-name >
< managed-bean-class > test.UserBean </ managed-bean-class >
< managed-bean-scope > session </ managed-bean-scope >
</ managed-bean >
</ faces-config >
<! DOCTYPE faces-config PUBLIC
"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
"http://java.sun.com/dtd/web-facesconfig_1_0.dtd" >
< faces-config >
< application >
< locale-config >
< default-locale > en </ default-locale >
< supported-locale > zh_CN </ supported-locale >
</ locale-config >
</ application >
< navigation-rule >
< from-view-id > /index.jsp </ from-view-id >
< navigation-case >
< from-outcome > success </ from-outcome >
< to-view-id > /welcome.jsp </ to-view-id >
</ navigation-case >
< navigation-case >
< from-outcome > failure </ from-outcome >
< to-view-id > /index.jsp </ to-view-id >
</ navigation-case >
</ navigation-rule >
< managed-bean >
< managed-bean-name > user </ managed-bean-name >
< managed-bean-class > test.UserBean </ managed-bean-class >
< managed-bean-scope > session </ managed-bean-scope >
</ managed-bean >
</ faces-config >
JavaBean:
package
test;
public class UserBean ... {
private String username;
private String password;
private String errorMessage;
private String locale;
public String getLocale() ...{
return locale;
}
public void setLocale(String locale) ...{
this.locale = locale;
}
public String verify() ...{
if(!username.equals("admin") ||
!password.equals("123456")) ...{
errorMessage = "名称或密码错误";
return "failure";
}
else ...{
return "success";
}
}
public String getPassword() ...{
return password;
}
public void setPassword(String password) ...{
this.password = password;
}
public String getErrorMessage() ...{
return errorMessage;
}
public void setErrorMessage(String errorMessage) ...{
this.errorMessage = errorMessage;
}
public String getUsername() ...{
return username;
}
public void setUsername(String username) ...{
this.username = username;
}
}
public class UserBean ... {
private String username;
private String password;
private String errorMessage;
private String locale;
public String getLocale() ...{
return locale;
}
public void setLocale(String locale) ...{
this.locale = locale;
}
public String verify() ...{
if(!username.equals("admin") ||
!password.equals("123456")) ...{
errorMessage = "名称或密码错误";
return "failure";
}
else ...{
return "success";
}
}
public String getPassword() ...{
return password;
}
public void setPassword(String password) ...{
this.password = password;
}
public String getErrorMessage() ...{
return errorMessage;
}
public void setErrorMessage(String errorMessage) ...{
this.errorMessage = errorMessage;
}
public String getUsername() ...{
return username;
}
public void setUsername(String username) ...{
this.username = username;
}
}
index.jsp
<%
...
@ page language="java" import="java.util.*" pageEncoding="gb2312"
%>
<% ... @taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<% ... @taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" >
< html >
< head >
</ head >
< body >
< f:view >
< h:form >
< h:selectOneRadio value ="#{user.locale}" >
< f:selectItem itemValue ="zh_CN" itemLabel ="中国" />
< f:selectItem itemValue ="en" itemLabel ="英国" />
</ h:selectOneRadio >
< h:messages layout ="table" style ="color:red" />
< h3 > 请输入您的名称 </ h3 >
< font color ="red" >< h:outputText value ="#{user.errorMessage}" />< p ></ font >
名称: < h:inputText value ="#{user.username}" required ="true" requiredMessage ="名称必须输入" />< p >
密码: < h:inputSecret value ="#{user.password}" required ="true" requiredMessage ="密码必须输入" validatorMessage ="长度必须大于6位" >
< f:validateLength minimum ="6" />
</ h:inputSecret >< p >
< h:commandButton value ="送出" action ="#{user.verify}" />
</ h:form >
</ f:view >
</ body >
</ html >
<% ... @taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<% ... @taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" >
< html >
< head >
</ head >
< body >
< f:view >
< h:form >
< h:selectOneRadio value ="#{user.locale}" >
< f:selectItem itemValue ="zh_CN" itemLabel ="中国" />
< f:selectItem itemValue ="en" itemLabel ="英国" />
</ h:selectOneRadio >
< h:messages layout ="table" style ="color:red" />
< h3 > 请输入您的名称 </ h3 >
< font color ="red" >< h:outputText value ="#{user.errorMessage}" />< p ></ font >
名称: < h:inputText value ="#{user.username}" required ="true" requiredMessage ="名称必须输入" />< p >
密码: < h:inputSecret value ="#{user.password}" required ="true" requiredMessage ="密码必须输入" validatorMessage ="长度必须大于6位" >
< f:validateLength minimum ="6" />
</ h:inputSecret >< p >
< h:commandButton value ="送出" action ="#{user.verify}" />
</ h:form >
</ f:view >
</ body >
</ html >
welcome.jsp
<%
...
@ page language="java" import="java.util.*" pageEncoding="gb2312"
%>
<% ... @taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<% ... @taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" >
< html >
< head >
</ head >
< body >
< f:view >
< h:outputText value ="#{user.username}" /> 您好! < h:outputText value ="#{user.locale}" /> 您好!
< h3 > 欢迎使用 JavaServer Faces! </ h3 >
</ f:view >
</ body >
</ html >
<% ... @taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<% ... @taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" >
< html >
< head >
</ head >
< body >
< f:view >
< h:outputText value ="#{user.username}" /> 您好! < h:outputText value ="#{user.locale}" /> 您好!
< h3 > 欢迎使用 JavaServer Faces! </ h3 >
</ f:view >
</ body >
</ html >
要求用户名,密码必须输入,且密码不能好于6位