如何将struts2中内置的转换异常提示信息变成中文_Android, Python及开发编程讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Android, Python及开发编程讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2007 | 回复: 0   主题: 如何将struts2中内置的转换异常提示信息变成中文        下一篇 
    本主题由 koei123 于 2015-6-1 14:53:33 移动
yangzi.liluo
注册用户
等级:中校
经验:1971
发帖:41
精华:0
注册:1970-1-1
状态:离线
发送短消息息给yangzi.liluo 加好友    发送短消息息给yangzi.liluo 发消息
发表于: IP:您无权察看 2015-4-2 11:17:43 | [全部帖] [楼主帖] 楼主

struts2中的校验信息,如果发生不能转换,如将字母转换成数字,将发生转换异常。

struts2内置的转换异常提示信息是英文的,如:

Invalid field value for field "age".


如何将他转换成中文的?

比如,工程中src/com.xie.struts2.action目录下有个注册的RegisterAction.java

要对RegisterAction.java中的转换异常提示信息变成中文的,就要在RegisterAction.java的同一目录下,新建一个RegisterAction.properties文件。里面写上:

invalid.fieldvalue.age=年龄必须为整数

invalid.fieldvalue.birthday=出生日期必须为日期格式

invalid.fieldvalue.grduation=毕业日期必须为日期格式

写完后保存,但是properties本身是不支持中文的,也就是说不能保存有中文的文件。

那该怎么办呢?呵呵,这时别忘了,jdk中有个命令可以把中文转化成ASCII码格式。

打开JDK安装目录的bin目录下有个native2ascii命令,用它来把中文转成ASCII码。

可以在该目录下,目录随便都行,新建一个text.txt文件,名字也是随便,把RegisterAction.properties

里面的代码复制到刚刚新建的文件中,这样就可以保存了。然后用native2ascii命令进行转码,在开始,运行,输入cmd进入命令行,转到text.txt文件所在的目录,然后输入:native2ascii text.txt RegisterAction.properties进行转码,转码成功后,把新生成的RegisterAction.properties文件拷贝到,你工程RegisterAction.properties所对应的目录下,覆盖掉旧的RegisterAction.properties这个文件即可。

打开RegisterAction.properties,你看到里面的中文已经转码了:

invalid.fieldvalue.age=\u5e74\u9f84\u5fc5\u987b\u4e3a\u6574\u6570
invalid.fieldvalue.birthday=\u51fa\u751f\u65e5\u671f\u5fc5\u987b\u4e3a\u65e5\u671f\u683c\u5f0f
invalid.fieldvalue.grduation=\u6bd5\u4e1a\u65e5\u671f\u5fc5\u987b\u4e3a\u65e5\u671f\u683c\u5f0f


这时你再进行测试,提示信息就不再是Invalid field value for field "age".了,而是年龄必须为整数。即你转码后的中文。

该贴由koei123转至本版2015-6-1 14:53:33



赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论