我技术浅薄,可写的东西实在太少,今天刚好搭建了一下开发框架,就把这些写出来共享,顺便留作以后参考。
转载请申明原创作者【selfimpr】。
涉及的问题主要有两个:
1. 自动异常处理:struts支持的配置异常处理,采用自己定义的异常处理系统中的所有自定义异常。
2. 国际化:一时半会想不出怎么解释,自己查查吧。
首先,看自动异常处理:
先定义自己的异常类
定义自己的异常的处理类.
在struts-config.xml文件中配置异常的处理方式:
这里不要忘记最底下指定国际化资源文本的名字哦
这样异常处理的"后台就做完了"
定义好我们需要的测试页面之后,在action中的调用中,我们模拟一个异常:
让我们来看看MessageResource.properties中的内容(MessageResource.properties放到类路径下就可以了,也就是我们开发的时候的src目录,部署之后的/WEB-INF/classes目录), 不用关注其他的信息,看我用# here标注的那几个我们用到的那几行.
这样,我们在最后的异常转向页面,也就是error.jsp中用一句<html:errors />就可以拿到异常信息了
注意,在error.jsp中使用<html:errors />标签的时候需要引入相关的taglib
<%@ taglib prefix="html" uri="http://struts.apache.org/tags-html" %>
其实上面已经涉及了国际化的处理了,但是,我在做国际化处理的时候,发现我改了浏览器的语言,他也给我不变.
我就做了一个filter
下面具体看看我的国际化处理方式:
首先,定义我们的国际化过滤器,主要是用来获取浏览器中定义的语言选项,然后设置到struts中,让struts获取相应的国际化资源文本.
在web.xml中配置这个filter的时候,采用/*配置uri-pattern就可以了,让它去过滤所有的请求.
这样,就已经基本完工了,具体的其他代码,可以看看我上传的这个项目的源码.
地址在:http://download.csdn.net/source/1162430.
另外,提一个思路:
对于国际化而言,用户往往并不是希望固定的看浏览器语言设定的那一种语言的.这样,我们其实可以像google那样让用户可以选择语言.
这个的实现思路是:
用一个ThreadLocal保存每个用户选择的Locale信息,还是用过滤器.
分享到:
相关推荐
struts1 国际化 源代码 struts1 国际化 工程
从网上搜索的一段关于struts1.x自定义异常处理的方法。
Struts1.x常用的开发包,需要学习struts1.x朋友可以下载
struts1.x和struts2.x区别
在这里,通过一个小例子稍微总结了下struts1和struts2的区别,希望这个能帮助到初学struts的朋友
freemarker与struts 1.x 结合,生成html 在http://blog.csdn.net/chen1255 的web中有详细描述关于freemarker与struts1.x的结合
java Struts 1.x 框架 Web 开发 java Struts 1.x 框架 Web 开发
Struts 2.x权威指南(第3版)
struts1.x入门教程
Struts1.x的登录示例,Struts1.x相关详细教程参考我的Blog:http://blog.csdn.net/boyazuo
struts1.x多文件上传, 感觉不错.
struts1.x apps 所有最新的Struts1.x项目应用 struts1.x apps 所有最新的Struts1.x项目应用 欢迎大家下载。。。
这是struts1.x标签! struts1.x是历经考验的成熟的框架! 此标签可以帮助你更好的学习struts1.x的标签!
struts1.x入门.pdf ,感觉写得还不错
适用于Struts1.x初学者(网摘共25节)
Struts1.x-Jdbc,学习Struts1.的曾删改查
eclipse国际化插件jinto 博文链接:https://gdf84.iteye.com/blog/215239
struts1.x的例子,struts2.x可以参考自己修改 1.action的写法 import java.io.*; import java.sql.*; import java.util.ArrayList; import javax.servlet.http.HttpServletRequest; import javax.servlet....
struts1.x 学习总结 struts1.x 学习总结 struts1.x 学习总结 struts1.x 学习总结