Tomcat - 解決which must be escaped when used within the value錯誤


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

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM