六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 71|回复: 0

发现bug在Tomcat6.x中 使用EL如${条件?A:B} 当A为变量时错,但5.x不会出现

[复制链接]

升级  70%

7

主题

7

主题

7

主题

童生

Rank: 1

积分
35
 楼主| 发表于 2013-2-6 08:45:04 | 显示全部楼层 |阅读模式
运行环境 windows Xp jdk1.6 tomcat6.0.16
jsp 代码 如下
-----------------------------------------------------------------
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>
<% request.setAttribute("a","1"); request.setAttribute("b","2"); %>
Use Expression :
${a<b?a:b}
------------------------------------------------------------------
出错信息:
exception:

        javax.el.ELException: Error Parsing: ${a<b?a:b}


PrintStatckTrace():
at org.apache.el.lang.ExpressionBuilder.createNodeInternal(ExpressionBuilder.java:125)
at org.apache.el.lang.ExpressionBuilder.build(ExpressionBuilder.java:146)
at org.apache.el.lang.ExpressionBuilder.createValueExpression(ExpressionBuilder.java:190)
at org.apache.el.ExpressionFactoryImpl.createValueExpression(ExpressionFactoryImpl.java:68)
at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:922)
at org.apache.jsp.test_jsp._jspService(test_jsp.java:94)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803

在Tomcat6.x中 使用EL如${条件?A:B} 只有当A为变量时错,但在5.x不会出现!
看了一下ExpressionBuilder源码,有些复杂!
不知那位高人,能否把修改正确ExpressionBuilder相关代码发给我!QQ:81223336
在下不胜感激!
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

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