struts 疑难问题(help me)
我在struts项目中创建了一个类, 并且让继承了HttpServletRequestWrapper,并重写了getParameterMap(), getParameterNames(), getParameter()等方法对用户的请求中的数据做gb2312的转码.
并且在过滤器(doFilter()方法)中使用这个类的对象,充当request
但加上后,目标页面都能直接的显示中文了,但ActionForm中的validate()方法就不会自动进行调用了(注: <action> 设置了validate=true, 在ActionForm中也覆盖了validate()方法)
请大侠们帮我一吧!!
------解决方案--------------------不太明白 你已经在filter用过了 干吗还要再用?
如果你实在要用的话可以参考我下面的意见
step1. 继承 requestproceesor.然后重写processValidate
class a extends requestproceesor{
protected boolean processValidate(省略){
HttpServletRequestWrapper newReq=HttpServletRequestWrapper(oldReq);
super.processValidate(newReq,省略);
}
}
step2. struts-config.xml里用 <controllor> 标签定义自定义的RequestProcessor(就是上面那个类)
------解决方案--------------------不要继承工具类。