weblogic 10.3 下 filter 向 action传值,无法获得request的值。 最近发现SSH项目部署在weblogic 10.3下,登录采用过滤器filter方式,对表单提交的数据进行必要的处理,然后通过request设置回去,却无法将request传到action中,在tomcat下是正常的,有人遇到同样的问题吗,请求各位帮助。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在登录的filter里测试,我发现我设置一个request值,request.setAttribute("aa","aa"),然后通过request.getParameter("aa"),和request.getAttribute("aa")获得,将结果打印出来: log.debug("request.getParameter("aa"):"+request.getParameter("aa")); log.debug("request.getAttribute("aa"):"+((String[])request.getAttribute("aa"))[0]);,结果在weblogic10.3下,getParameter(“aa”)为空值,getAttribute("aa")才有值。在tomcat6.0下两者都有值为aa。这是为什么呢?这个可能也也是我action取不到filter值的原因。 request.setAttribute("aa","aa") 就用getAttribute来取,至于为什么tomcat2者都可以,还没研究过,望高手赐教。 在weblogic10.3 下 写的个关键字过滤器filter,用来替换 表单提交的 数据,也失效了,比如我的关键字列表含有“项目”,提交的表单如果含有“项目”,将被替换成“***”,在tomcat6.0下是完全正常的,到了weblogic10.3下就不能被替换了,得到的仍然是“项目”,这是怎么回事呀,望请高手指教!public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { boolean flag =false; if(request.getParameterMap()!=null){ List<String> list =kService.getKeywordsList();//获得关键字列表 int listSize = list.size(); Map<String,String[]> map=request.getParameterMap(); Iterator it = map.keySet().iterator(); while(it.hasNext()&&!flag){ String key = (String)it.next(); String[] source = (String[])map.get(key);//获得参数值,数组形式 for(int j=0;j<source.length;j++){ for(int i=0;i<listSize&&!flag;i++){ String keyword = list.get(i).toString(); if(source[j].contains(keyword)){//如果参数含有关键字 source[j]=source[j].replaceAll(keyword, "***");//关键字用”***“替换 } } } } } } chain.doFilter(request, response); } Cookie和session有什么区别? 有关javamail的附件路径和乱码问题 一个js调用java类问题 上传文件问题,后台取到的文件名为NULL? 如何不列出空记录? JSP数据丢失问题 紧急求教:servlet输出xml字符串出现错误 大家帮我看看这个问题 关于jb7+weblogic7开发jsp的设置问题 Request的getParameter和getAttribute方法的区别 做好网站预览的时候发现滚动公告栏的内容无法完全显示(附:代码如下) JSP中如何实现添加表情功能?
log.debug("request.getParameter("aa"):"+request.getParameter("aa"));
log.debug("request.getAttribute("aa"):"+((String[])request.getAttribute("aa"))[0]);
,结果在weblogic10.3下,getParameter(“aa”)为空值,getAttribute("aa")才有值。在tomcat6.0下两者都有值为aa。这是为什么呢?这个可能也也是我action取不到filter值的原因。
FilterChain chain) throws IOException, ServletException {
boolean flag =false;
if(request.getParameterMap()!=null){
List<String> list =kService.getKeywordsList();//获得关键字列表
int listSize = list.size();
Map<String,String[]> map=request.getParameterMap();
Iterator it = map.keySet().iterator();
while(it.hasNext()&&!flag){
String key = (String)it.next();
String[] source = (String[])map.get(key);//获得参数值,数组形式
for(int j=0;j<source.length;j++){
for(int i=0;i<listSize&&!flag;i++){
String keyword = list.get(i).toString();
if(source[j].contains(keyword)){//如果参数含有关键字
source[j]=source[j].replaceAll(keyword, "***");//关键字用”***“替换
}
}
}
}
}
}
chain.doFilter(request, response); }