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> 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> 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;}} 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> 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> 要求用户名,密码必须输入,且密码不能好于6位