1.全局信息配置
在struts.xml增加如下内容:
<constant name="struts.custom.i18n.resources" value="global" />
或struts.properties文件中指定如下一行
struts.custom.i18n.resources=global
在class路径下增加如下文件:
(1)global_en_US.properties
username=(G)username password=(G)password submit=(G)submit chinese=(G)Chinese english=(G)English language=(G)Language login=(G)Login Page firstpage=This is the sucess page.
(2)global_zh_CN.properties
username=(G)\u7528\u6237\u540D password=(G)\u5BC6\u7801 submit=(G)\u786E\u5B9A chinese=(G)\u4E2D\u6587 english=(G)\u82F1\u6587 language=(G)\u8BED\u8A00 login=(G)\u767B\u5F55\u9875\u9762 firstpage=\u8FD9\u662F\u6210\u529F\u9875\u9762
global可以换成其他的文件名
2.在Action类中配置
如下图所示:
LoginValidate.java
@SuppressWarnings("serial")
public class LoginValidate extends ActionSupport {
private String username;
private String password;
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
LoginValidate-validation.xml
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
<field name="username">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>${getText("name.null")}</message>
</field-validator>
</field>
<field name="password">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>${getText("password.null")}</message>
</field-validator>
</field>
</validators>
LoginValidate_en_US.properties
name.null=(A)Username is empty\!
password.null=(A)Password is empty\!
LoginValidate_zh_CN.properties
name.null=(A)\u7528\u6237\u540D\u4E3A\u7A7A\uFF01
password.null=(A)\u5BC6\u7801\u4E3A\u7A7A\uFF01
3.国际化的使用
(1)jsp的使用
<s:text name="inputpsw"/>
<s:textfield name="username" key="username"/>
<s:submit value="%{getText('submit')}" />
<s:property value="%{getText('login')}" />
(2)Action调用
addActionError(getText("invalid"));
addFieldError("password", "password.error");
(3) validateors调用
<message>${getText("error.name.null")}</message>