2013-02-18 197 views
0

我正在使用ubuntu與打包的tomcate7。 我用.war文件上傳網站。 網絡工作正常。tomcat和解壓縮文件

這不是我的網站,但它的存在:在

/var/cache/tomcat7/Catalina/localhost/_/org/apache/jsp/ 

/var/cache/tomcat7/Catalina/localhost/_/WEB-INF/classes/ 

我沒有找到任何我的.css或

:/var/lib/tomcat7/webapps/ROOT$ ls 
index.html META-INF 

我找到我的網站文件(那些的.war)。 js文件與系統級搜索 像find/-name '*.css' -ls

  1. 他們在哪裏?

  2. 有沒有一種簡單的方法只是給tomcat的.class文件或刪除的.jsp .java文件 (例如,如果我不希望給真正的來源,但只的.class) JSP預編譯。在構建時,某些工具(jspc)很難。 任何輕鬆走過?

回答

0

WAR文件可能位於服務器的某處,但tomcat可能已被配置爲不在展開時「爆炸」WAR文件,並直接將資源直接提供給WAR。這可能是您的網站「工作」的原因,但您無法找到實際的.css文件,.css文件不在文件系統中,但仍包含在WAR中。

至於#2,預編譯JSP,由於某種原因,這仍然是一個「僅僅是半自動化」的過程。

在部署之前預先編譯JSP需要將JSP文件轉換爲Java源文件,編譯該文件,然後將最終的類作爲servlet映射到最終的Web應用程序中,然後最後從該應用程序中刪除該JSP文件網絡應用程序。

有一個Tomcat Page討論過程,但只提供部分解決方案(從自動化的角度來看)。

當然,預編譯並不流行的一個原因是預編譯的JSP不能跨容器移植,也不一定是相同容器的版本。所以,這是一個值得注意的問題。

+0

很好的答案,並接受謝謝。這個http://stackoverflow.com/questions/497830/how-can-i-make-tomcat-pre-compile-jsps-on-startup回答和compularnds我問了什麼,你說什麼。 – kevin 2013-02-19 19:03:15