六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 97|回复: 0

一段逻辑控制不严密代码在tomcat和weblogic上两种不种表现

[复制链接]

升级  24.33%

81

主题

81

主题

81

主题

举人

Rank: 3Rank: 3

积分
273
 楼主| 发表于 2013-2-7 20:03:13 | 显示全部楼层 |阅读模式
以下是一段struts2的action方法:
public String toAdd() {
  this.getRequest().setAttribute("list",makeList());

  return SUCCESS;
}

private List makeList() {
   List list = XXXXXXX(省略);
   if (null == list || 0 == list.size()) {//输出一段提示脚本,并关闭页面
     this.getResponse().reset();
     this.getResponse().setContentType("text/html;charset=GBK");
     PrintWriter out = this.getResponse().getWriter();
     out.write("<script>alert('xxxxx不能为空!');window.close();</script>");
     out.close;     
   }
   return list;
}

这么一段代码,在tomcat中运行时,当list为空时,不能为空的脚本提示,点确定后,页面会关闭,但是在weblogic中运行时,这段脚本不会提示,页面会直接跳入SUCCESS指向的页面。

当然,这段代码本身在逻辑上是有问题的,把脚本输出这一段代码提上去放到toAdd()的action方法,就可以达到weblogic也提示脚本的效果。

我想问一下的是,在不改变这段代码的前提下,为什么tomcat中会跳入脚本,而weblogic中不会呢?
tomcat版本:6.0.20 weblogic版本:9.2
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表