2012-04-02 212 views
0

我們正在使用jetty在我們的應用程序中部署我們的戰爭。它與jre-jdk 1.6.0_06,u23,u31都可以正常工作,但在我們的客戶系統中,應用程序會在將war提取到/ var/tmp時針對所有jre-jdk 1.6 u6,u23,u31拋出以下錯誤。/var/tmp目錄具有默認權限。我的意思是/ var所許可的/ tmp爲drwxrwxrwt 堆尺寸參數爲-Xms128m -Xmx1024m碼頭,戰爭部署

OS:Solaris SPARC上5.10

我不確定內存大小,但我認爲它不小於4GB。

java.util.zip.ZipException: error in opening zip file 
    at java.util.zip.ZipFile.open(Native Method) 
    at java.util.zip.ZipFile.<init>(Unknown Source) 
    at java.util.jar.JarFile.<init>(Unknown Source) 
    at java.util.jar.JarFile.<init>(Unknown Source) 
    at org.mortbay.jetty.webapp.TagLibConfiguration.configureWebApp(TagLibConfiguration.java:171) 
    at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1215) 
    at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:500) 
    at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40) 
    at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147) 
    at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:161) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40) 
    at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40) 
    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117) 
    at org.mortbay.jetty.Server.doStart(Server.java:210) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40) 

對此有何想法?

+0

這看起來不像戰爭文件問題的解包和更多對戰爭文件本身內容的處理。請參閱TagLibConfiguration類:https://github.com/eclipse/jetty.project/blob/master/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/TagLibConfiguration.java#L171 – 2012-04-03 00:19:34

回答

0

看來,JVM認爲是臨時目錄,由於沒有寫入權限而無法訪問。請參閱Temporary DirectoriesBug

+0

實際上,它具有。正如我寫的,/ var/tmp目錄具有drwxrwxrwxt權限。我將嘗試使用-Djava.io.tmpdir重定向tmp目錄 – Aykut 2012-04-02 12:01:41