index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title> 校验</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<body>
<s:fielderror/>
<form action="${pageContext.request.contextPath}/person/nba_save.action" method="post">
用户名:<input type="text" name="username" /> <br/>
手机号:<input type="text" name="mobile" /> <br/>
<input type="submit" value=" 提 交 " />
</form>
</body>
</html>
strruts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.action.extention" value="do,action"></constant>
<package name="person" namespace="/person" extends="struts-default">
<action name="nba_*" class="cn.feng.action.PersonAction" method="{1}">
<result name="input">/index.jsp</result>
<result name="message">/WEB-INF/page/message.jsp</result>
</action>
</package>
PersonAction-validation.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC
"-//Apache Struts//XWork Validator 1.0.2//EN"
"http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd">
<validators>
<field name="username">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>用户名不能为空</message>
</field-validator>
</field>
<field name="mobile">
<field-validator type="requiredstring">
<message>手机号不能为空</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[^1[358]\d{9}$]]></param>
<message>手机号格式不正确</message>
</field-validator>
</field>
</validators>
.Properties位于src目录下,在这里是设置资源文件
W我们可以通过struts。Cuistom.i18n.resources常量把资源文件定义为全局资源文件;
<constant name="struts.custom.i18n.resources" valur="itcast">
我们可以在页面或者action中访问国际化信息;
在jsp页面中使用<s:text name="" />标签输出国际化信息;
<s:text name="user">name为资源文件中的key信息;
在action类中,可以继承actionsupport,使用getText()方法的到国际化信息,方法request范围内,
在表单标签中通过key属性指定资源文件中的key,
<s:textfield name="reslname" key="user"/>