Tomcat - 解决which must be escaped when used within the value错误

http://www.cnblogs.com/javadu/archive/2012/02/28/tomcat.html


Tomcat 5.5.35 下发生的错误:

代码:

?
<html:option value="<%= hmpElement.get("value") %>">
</html:option>
错误:

?
org.apache.jasper.JasperException: /jsp/demo.jsp(25,14) Attribute value  hmpElement.get("value")  is quoted with " which must be escaped when used within the value
  中文:引号内不能在使用引号。

原则上是这样的,但是我们这种写法完全正确。这可能是Tomcat的一个bug。

此问题是由于tomcat5.5.28及以上版本升级引起。



1.       可以修改代码如下:

?
<jsp:include page="fastpost.jsp">
       <jsp:param name="returl" value='<%=Url.encode(“***”) %>' /> </jsp:include>
  
2.       可以在catalina.sh中加入(tomcat 压缩版使用):

?
JAVA_OPTS="-Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false"
3.       或者可以在Tomcat的Java Options中加入(TOMCAT安装版使用):

?
-Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false
  

你可能感兴趣的:(tomcat)