2012-02-14 21 views
2

我試圖通過在我的部署描述符 中編寫下面的代碼來使腳本無效,但腳本仍在執行。在JSP中使Scriptlet無效

<jsp-config> 
     <jsp-property-group> 
      <url-pattern>*.jsp</url-pattern> 
      <scripting-invalid>false</scripting-invalid> 

      <el-ignored>true</el-ignored> 
     </jsp-property-group> 
    </jsp-config> 
+0

腳本仍然在執行,因爲它們被緩存...清除你的tomcat緩存並重新啓動tomcat .. – 2012-02-14 07:27:34

回答

0

我認爲jsp已經轉換爲Java servlets。嘗試重新生成jsp到servlet。

+0

只有當jsp被某人調用時,Jsp纔會被轉換成java servlets。 – 2012-02-15 13:04:15

3

您需要反過來配置它。

<scripting-invalid>true</scripting-invalid> 
<el-ignored>false</el-ignored> 

<scripting-invalid>設置爲true,那麼容器將拋出異常時的scriptlet(那些<% %><%= %><%! %>東西)仍在使用。

你肯定不希望設置<el-ignored>true,否則你將無法使用表達式語言(那些${}的東西),這是訪問模型,並在JSP中執行功能的推薦方式。如果你同時禁用它,那麼你的所有JSP都是無用的,並且可以是普通的靜態HTML文件。

相關問題