2008-02-01
使用JSF处理表单验证
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" %>

发表评论
- 浏览: 84461 次
- 性别:

- 来自: 北京

- 详细资料
搜索本博客
最近加入圈子
最新评论
-
Static初始化代码快访问st ...
当然啦,final型常量只能被赋值一次
-- by Chihom -
Tomcat 5.5不能使用EL表达 ...
請在web.xml修改XSD<?xml version="1.0" enc ...
-- by trowa -
一个通用的泛型GenericH ...
谢谢!使用中!
-- by sangood -
Spring AOP四种创建通知( ...
我一直想知道如何拦截某个类中特定的方法,而不是所有的方法?
-- by yourgame -
HashTable和HashMap的区 ...
这么多总结,还算你的这个不错,谢谢,学习
-- by lysmart_8






评论排行榜