日期:2014-05-17  浏览次数:20643 次

JSP自定义标签和表达式的问题
最近把tomcat升级到7.0版本了,发现项目中很多旧的代码都报错了,主要有以下几种现象
1、struts标签中的表达式会造成标签内部错误
HTML code
<html:form action="createComments.do" enctype="multipart/form-data" onsubmit="return validate(commentsForm.content,3001,'<%=BeanMessageUtil.getMessage("comment.content")%>')">


这行总是报错,把表达式去掉已有就没有问题了。

2、双引号嵌套问题,这个可以通过tomcat的系统参数设置来解决。

3、自定义标签内的表达式某些情况不解析
HTML code
<mytag:htmlDataList action="getDataList.do?dataType=<%=data.getDataType()%>"  pageData="<%=pageData%>" session="<%=session%>" />

这行里面的action被原封不动的传到了服务器,输出时也是原封不动,而写成:
HTML code
action="<%="getDataList.do?dataType="+data.getDataType()%>"

就没有可以计算表达式内的内容了,不知道tomcat升级后是对输入严格要求了还是配置的问题。

请高手解答。

------解决方案--------------------
呃,没有用过tomcat7,都是一直是六。

帮顶,祝楼主好运

或许应该把jdk也换成7的。
------解决方案--------------------
没有用过tomcat7,用的是tomcat6
toamcat出错版本可能和jdk版本有关!