Internationalization Example in Struts 1.3
Previous | Home | Next |
Internationalization Example in Struts 1.3 the following tool are required for run this exampleDirectory Structure of InternationalizationExample in Struts 1.3 Using MyEclipse IDE
- JDK 1.5
- MyEclipse IDE
- Server Tomcat 6.0
- Struts 1.3 jar file
index.jsp<%@taglib uri="http://struts.apache.org/tags-html" prefix="html"%> <%@taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Internationalization Example</title> </head> <body> <h3>Internationalization Example</h3> <ul> <li><html:link page="/inter.do?method=chinese">Chinese Language</html:link></li> <li><html:link page="/inter.do?method=english">English Language</html:link></li> <li><html:link page="/inter.do?method=france">France Language</html:link></li> </ul> </body> </html>web.xml<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Maven Struts Examples</display-name> <servlet> <servlet-name>action</servlet-name> <servlet-class> org.apache.struts.action.ActionServlet </servlet-class> <init-param> <param-name>config</param-name> <param-value> /WEB-INF/struts-config.xml </param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> </web-app>struts-config.xml<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_3.dtd"> <struts-config> <form-beans> <form-bean name="internationalizationForm" type="org.r4r.struts.InternationalizationForm"/> </form-beans> <action-mappings> <action path="/inter" type="org.r4r.struts.InternationalizationAction" name="internationalizationForm" parameter="method" validate="false" > <forward name="english" path="/english.jsp"/> <forward name="chinese" path="/chinese.jsp"/> <forward name="france" path="/france.jsp"/> </action> </action-mappings> <message-resources parameter="org.r4r.struts.ApplicationResources" /> </struts-config>InternationalizationForm.javapackage org.r4r.struts; import javax.servlet.http.HttpServletRequest; import org.apache.struts.action.ActionErrors; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionMapping; import org.apache.struts.action.ActionMessage; @SuppressWarnings("serial") public class InternationalizationForm extends ActionForm{ private String name; private String password; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } @Override public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) { ActionErrors errors = new ActionErrors(); if( getName() == null || ("".equals(getName()))) { errors.add("error.name", new ActionMessage("error.name")); } if( getPassword() == null || ("".equals(getPassword()))) { errors.add("error.password", new ActionMessage("error.password")); } return errors; } @Override public void reset(ActionMapping mapping, HttpServletRequest request) { // reset properties name = ""; password = ""; } }InternationalizationAction.javapackage org.r4r.struts; import java.util.Locale; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.Globals; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.actions.DispatchAction; public class InternationalizationAction extends DispatchAction{ public ActionForward chinese(ActionMapping mapping,ActionForm form, HttpServletRequest request,HttpServletResponse response) throws Exception { request.getSession().setAttribute( Globals.LOCALE_KEY, Locale.SIMPLIFIED_CHINESE); return mapping.findForward("chinese"); } public ActionForward english(ActionMapping mapping,ActionForm form, HttpServletRequest request,HttpServletResponse response) throws Exception { request.getSession().setAttribute( Globals.LOCALE_KEY, Locale.ENGLISH); return mapping.findForward("english"); } public ActionForward france(ActionMapping mapping,ActionForm form, HttpServletRequest request,HttpServletResponse response) throws Exception { request.getSession().setAttribute( Globals.LOCALE_KEY, Locale.FRANCE); return mapping.findForward("france"); } }ApplicationResources.properties#error message error.name = Username is required error.password = Password is required #label message label.title=Internationalization Example label.header = Internationalization Example label.name = Username label.password = Password label.submit = SubmitApplicationResources_zh_CN.properties#SIMPLIFIED_CHINESE #error message error.name = 请输入用户å error.password = 请输入密ç #label message label.title=本地化例å label.header = 本地化例å label.name = 用户å label.password = 密ç label.submit = æäº¤ApplicationResources_fr.properties#error message error.name = Nom d'utilisateur est nécessaire error.password = Mot de passe est requis #label message label.title=par exemple la localisation label.header = par exemple la localisation label.name = Nom d'utilisateur label.password = Mot de passe label.submit = Soumettreenglish.jsp<%@taglib uri="http://struts.apache.org/tags-html" prefix="html"%> <%@taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title><bean:message key="label.title" /></title> </head> <body> <h3><bean:message key="label.header" /></h3> <html:messages id="errorName" property="error.name"> <div style="color:red"><bean:write name="errorName" /></div> </html:messages> <html:messages id="errorPassword" property="error.password"> <div style="color:red"><bean:write name="errorPassword" /></div> </html:messages> <html:form action="/english"> <bean:message key="label.name" /> : <html:text property="name" /><br/> <bean:message key="label.password" /> : <html:text property="password" /><br/> <html:submit><bean:message key="label.submit" /></html:submit> </html:form> </body> </html>chinese.jsp<%@taglib uri="http://struts.apache.org/tags-html" prefix="html"%> <%@taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title><bean:message key="label.title" /></title> </head> <body> <h3><bean:message key="label.header" /></h3> <html:messages id="errorName" property="error.name"> <div style="color:red"><bean:write name="errorName" /></div> </html:messages> <html:messages id="errorPassword" property="error.password"> <div style="color:red"><bean:write name="errorPassword" /></div> </html:messages> <html:form action="/chinese"> <bean:message key="label.name" /> : <html:text property="name" /><br/> <bean:message key="label.password" /> : <html:text property="password" /><br/> <html:submit><bean:message key="label.submit" /></html:submit> </html:form> </body> </html>france.jsp<%@taglib uri="http://struts.apache.org/tags-html" prefix="html"%> <%@taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title><bean:message key="label.title" /></title> </head> <body> <h3><bean:message key="label.header" /></h3> <html:messages id="errorName" property="error.name"> <div style="color:red"><bean:write name="errorName" /></div> </html:messages> <html:messages id="errorPassword" property="error.password"> <div style="color:red"><bean:write name="errorPassword" /></div> </html:messages> <html:form action="/france"> <bean:message key="label.name" /> : <html:text property="name" /><br/> <bean:message key="label.password" /> : <html:text property="password" /><br/> <html:submit><bean:message key="label.submit" /></html:submit> </html:form> </body> </html>Output
Previous | Home | Next |