原文連結:http://my.oschina.net/hunterli/blog/39767
問題描述:
預設情況下,JSP 編譯器用 1.3 的規範來編譯 JSP 檔案,如果在 WAS V6.1 裡用了帶 JDK 1.5 的特性的
JSP,編譯會失敗
解答:
為了確保您的 JSP 被正確編譯,請在打包時的 JSP 屬性裡添加一個屬性:jdkSourceLevel,值為:15,這是推薦的方法,如果您不能重新打包後重新發布應用,請按照下面的步驟修改相關檔案:
找到下面的兩個檔案:
<WAS-HOME>/profiles/AppSrv01/config/cells/<cellname>/applications/<appname>/deployments/<appname.war>/WEB-INF/ibm-web-ext.xmi
<WAS-HOME>/profiles/AppSrv01/installedApps/<nodename>/<appname>/<appname.war>/WEB-INF/ibm-web-ext.xmi
在最後面的 </webappext:WebAppExtension> 前添加下面一行:
<jspAttributes xmi:id="JSPAttribute_113" name="jdkSourceLevel" value="15"/>
儲存後重新啟動應用即可,也請同時刪除 jsp 已經編譯過的 class 檔案:
<WAS-HOME>/profiles/AppSrv01/temp/<nodename>/<appname>/<appname.war>/*.class
進階版本( 6.1.0.15以上)可以進入WAS的控制台頁面伺服器>應用程式伺服器>[選擇所使用的伺服器]>Web 容器設定>Web 容器>定製屬性,增加配置
com.ibm.ws.jsp.jdkSourceLevel = 13(default) or 14 or 15
重新啟動WAS服務即可。