`
lyx_2709
  • 浏览: 316468 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

webwork国际化

阅读更多

本文主要例用简单的例子来讲解webwork对国际化的支持。

为了降低代码的编写量,减少视频文件的大小。本文主要针对上几个视频进行改写。在阅读本文之前请参lyx.iteye.com博客上的相关视频.

开发环境

Eclipse3.2

Myeclipse.5.1

Tomcat 5.5.9

PropertiesEditor插件

struts中我们可以用 <html:messages key="””"> </html:messages> 来对页面进行国际化,我们也可以通过ActionMessages,ActionMessage两个类对Validator国际化。<o:p></o:p>

在struts中建立好对应的国际化文件.properties文件,例如。ApplicationResources_zh_CN.properties中文。ApplicationResources_en_US.properties英语。并对struts-config.xml文件进行配置<o:p></o:p>

<message-resources parameter="com.lyx.struts.ApplicationResources" />这样就可以完成国际化了。<o:p></o:p>

当然大家可以参考struts的源码研究一下实现的原理。<o:p></o:p>

我们首先来看一下页面国际化的相关内容。<o:p></o:p>

src 目录下新建 messages_zh_CN.properties 文件,内容如下:<o:p></o:p>

Label.username=用户名<o:p></o:p>

Label.password=密码<o:p></o:p>

Label.welcome=欢迎您{0}<o:p></o:p>

在刚才这一步大家注意看我的操作,刚才的过程实质是由PropertiesEditor插件完成.当然

你也可以把该文件编辑完,通过native2ascii命令来完成

格式如下:

Native2ascii message_zh_CN.properties 任意一个文件名

然后再将你转换后的文件的文件名改回来就可以了.

你也可以建立一个批处理文件也就是.bat文件.这样更方便些,随时可以执行.

在这里我们用这个插件,更加的方便.<o:p></o:p>

src 目录下新建 messages_en_US.properties 文件,内容如下:<o:p></o:p>

Label. username =username<o:p></o:p>

Label. password =password<o:p></o:p>

Label.welcome=welcome {0}<o:p></o:p>

修改index页面代码如下:<o:p></o:p>

<%@ page language="java" contentType="text/html; charset=UTF-8"%><o:p></o:p>

把字符集改成UTF-8的,为了支持国际化.<o:p></o:p>

<%@ taglib prefix="ww" uri="/webwork"%><o:p></o:p>

<html><o:p></o:p>

    <head><o:p></o:p>

       <title>My JSP 'index.jsp' starting page<!---->title><o:p></o:p>

    <body><o:p></o:p>

    <ww:i18n name="messages"><o:p></o:p>

       <ww:form name="test" action="login.action" method="POST"><o:p></o:p>

    <ww:textfield  label="%{getText('label.username')}" name="userName" required="true" /><o:p></o:p>

    <ww:password label="%{getText('label.password')}" name="userPwd" required="true" /><o:p></o:p>

           <ww:submit value="Submit" /><o:p></o:p>

       <!---->ww:form><o:p></o:p>

<!---->ww:i18n><o:p></o:p>

<!---->body><o:p></o:p>

<!---->html><o:p></o:p>

修改success页面代码如下:<o:p></o:p>

    <ww:i18n name="messages"><o:p></o:p>

    <ww:text name="label.welcome"><o:p></o:p>

    <ww:param><ww:property value="user.userName" /><!---->ww:param><o:p></o:p>

    <!---->ww:text><o:p></o:p>

    <!---->ww:i18n><o:p></o:p>

基本代码就这些。测试一下看看吧。看看能不能得到我们想要的结果。<o:p></o:p>

OK了.<o:p></o:p>

第二部分:验证部份国际化。<o:p></o:p>

对于本文登陆的LoginAction要对应一个资源文件。命名以Action开头后面跟语言地区<o:p></o:p>

例如本文应LoginAction_zh_CN.properties。并放到同一目录下<o:p></o:p>

代码如下:<o:p></o:p>

error.username=用户名称必须输入!<o:p></o:p>

error.password=密码必须输入!<o:p></o:p>

同样再建一个LoginAction_en_US.properties代码如下:<o:p></o:p>

error.username=username is required!<o:p></o:p>

error.password=password is required!<o:p></o:p>

对验证部份进行修改<o:p></o:p>

   LoginAction-validation.xml<o:p></o:p>

<!---->DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0//EN" "http://www.opensymphony.com/xwork/xwork-validator-1.0.dtd"><o:p></o:p>

<validators><o:p></o:p>

    <field name="userName"><o:p></o:p>

       <field-validator type="requiredstring"><o:p></o:p>

           <message key="error.username">username is required! <!---->message><o:p></o:p>

       <!---->field-validator><o:p></o:p>

    <!---->field><o:p></o:p>

    <field name="userPwd"><o:p></o:p>

       <field-validator type="requiredstring"><o:p></o:p>

           <message key="error.password">password is required! <!---->message><o:p></o:p>

       <!---->field-validator><o:p></o:p>

    <!---->field><o:p></o:p>

<!---->validators><o:p></o:p>

   使用 key 来指定资源文件中的键值<o:p></o:p>

Ok了.全部通过.就到这里吧.<o:p></o:p>

我的联系方式:<o:p></o:p>

MSN:lyx_2709@hotmail.com<o:p></o:p>

Email:lyx_happy@163.com<o:p></o:p>

希望大家多提宝贵意见.<o:p></o:p>

分享到:
评论

相关推荐

    webwork-1.4-src.zip_webwork_webwork s_webwork.zip_webwork1.4.zip

    WebWork1.4是该框架的一个较早版本,它为开发者提供了强大的功能,包括动作映射、数据绑定、异常处理、国际化支持以及强大的视图渲染机制。在"webwork-1.4-src.zip"这个压缩包中,包含了WebWork1.4的源代码,这对于...

    webwork

    你可能会学习到如何安装配置WebWork2环境,创建和运行第一个WebWork应用程序,理解Action和Interceptor的工作原理,以及如何利用WebWork的特性进行表单处理、异常管理和国际化设置等。此外,文档可能还会介绍一些...

    WebWork2.0讲解说明

    5. 国际化与本地化:WebWork2.0提供简单易用的国际化和本地化功能,方便不同语言环境的应用开发。 三、WebWork2.0配置 WebWork2.0的配置主要集中在`webwork.xml`文件中,包括Action配置、Interceptor配置、过滤器...

    WebWork docs 2 -- webWork 详细的说明文档

    9. **国际化与本地化**:WebWork支持多语言环境,文档会指导如何实现应用程序的国际化和本地化。 10. **错误处理与异常处理**:WebWork提供了优雅的错误处理机制,包括自定义异常类和全局异常处理器。这部分内容将...

    webWork

    3. 国际化与本地化:WebWork支持多语言环境,方便开发者实现应用的国际化。 4. AJAX支持:WebWork提供了与AJAX集成的能力,可以创建富客户端应用。 5. 动态Action和结果:开发者可以根据不同的条件动态选择执行...

    Webwork2开发指南

    它提供了强大的数据绑定、动作控制、异常处理以及国际化等功能,使得开发者能够更高效地进行Web应用的开发。本指南将深入探讨Webwork2的核心概念、配置、以及实际开发中的应用。 **1. Webwork2 架构概述** Webwork2...

    webWork2开发指南

    7. **国际化与本地化**:WebWork2支持多语言环境,你可以通过简单的配置来实现应用的国际化和本地化,提供不同地区的用户界面。 8. **异常处理**:WebWork2的异常处理机制允许开发者定义全局和特定Action的异常...

    webwork2开发指南

    3. 国际化与本地化(i18n/L10n):WebWork2支持多语言环境,通过资源文件管理不同语言的文本。 4. 异常处理:WebWork2提供了全局异常处理器,可以统一处理未被捕获的异常,避免页面显示不友好。 5. 动态方法调用...

    webwork.pdf

    WebWork 2.0和Struts 2.0的出现,标志着Java Web开发领域的一次重大革新,它们不仅继承了MVC架构的优点,还通过一系列创新特性,如Action驱动模式、拦截器体系、输入校验、国际化支持以及与Spring的深度集成,极大地...

Global site tag (gtag.js) - Google Analytics