Google Prettify

2008-03-13

如何在weblogic 8中取得jsp編譯後的java檔

有寫過JSP的人都知道, 所謂的JSP,是container用來產生servlet class檔用的。Container翻譯JSP,產生.java檔,透過.java檔產生.class檔。最終就如同servlet一樣,還是要執行.class檔。所以當一個畫面呈現在瀏器時,至少會有jsp、java、class 3個檔案。不過在weblogic container中卻只看得到2個檔案

1.jsp檔在${BEA_HOME|}\user_projects\domains\mydomain\applications下, 也就是deploy的目錄。
2.class檔在${BEA_HOME}\user_projects\domains\mydomain\myserver\.wlnotdelete\extract下,也就是weblogic暫存目錄下。

那.java檔呢? weblogic 預設在產生.class檔後就會移除掉。要保留.java檔的方法是在weblogic.xml中設定keepgenerated為true即可。
${BEA_HOME}\user_projects\domains\mydomain\applications\${AP_NAME}\WEB-INF\weblogic.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN" 
"http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd">
<weblogic-web-app>    
  <jsp-descriptor>
    <jsp-param>
      <param-name>keepgenerated</param-name>
      <param-value>true</param-value>
    </jsp-param>
  </jsp-descriptor>
  <container-descriptor>
    <prefer-web-inf-classes>false</prefer-web-inf-classes>
  </container-descriptor>
</weblogic-web-app>

您或許對這些有興趣

最後

謝謝您的閱讀,希望您可以有豐富的收獲。