17. Januar 200718 j Hi @all, ich hab für unserer Entwickler auf zwei Linux Server einen Produktives und ein Test Tomcat aufgebaut. Jetzt versuchen die Entwicker auf dem Testtomcat ein war-File zu Deployen, aber das funkt nicht. Ich hab mal in den Logsgeschaut und da steht folgende Fehlermeldung. Kann jemand was damit anfangen? Was ich auch nicht verstehe, auf dem Prodserver funktioniert es. 2007-01-16 16:27:10 StandardContext[/manager]HTMLManager: managerServlet.extract[/srv/www/tomcat/demoserver/webapps/dbtest.war] java.util.zip.ZipException: No such file or directory /srv/www/tomcat/demoserver/webapps/dbtest.war at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.<init>(ZipFile.java:140) at java.util.jar.JarFile.<init>(JarFile.java:160) at java.util.jar.JarFile.<init>(JarFile.java:125) at org.apache.catalina.manager.ManagerServlet.extractXml(ManagerServlet.java:1514) at org.apache.catalina.manager.HTMLManagerServlet.doPost(HTMLManagerServlet.java:283) at javax.servlet.http.HttpServlet.service(HttpServlet.java:763) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:245) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:199) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:587) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:184) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:833) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:732) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:619) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:688) at java.lang.Thread.run(Thread.java:570)
17. Januar 200718 j No such file or directory /srv/www/tomcat/demoserver/webapps/dbtest.war ??? bigredeyes
17. Januar 200718 j Das habe ich schon gecheckt. Das Verzeichnis ist da und das File will ich ja über die Weboberfläche hochladen und dass funktioniert ja nicht. EDIT: Mir ist noch aufgefallen, dass ich nicht die Ganze Log gepostet habe, hier ist sie noch mal in voller Fassung:2007-01-17 10:28:00 StandardContext[/manager]HTMLManager: list: Listing contexts for virtual host 'localhost' 2007-01-17 10:28:25 StandardContext[/manager]HTMLManager: FAIL - Deploy Upload Failed, Exception: null java.lang.NullPointerException at org.apache.commons.fileupload.DefaultFileItem.write(DefaultFileItem.java:442) at org.apache.catalina.manager.HTMLManagerServlet.doPost(HTMLManagerServlet.java:257) at javax.servlet.http.HttpServlet.service(HttpServlet.java:763) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:245) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:199) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:587) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:184) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:833) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:732) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:619) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:688) at java.lang.Thread.run(Thread.java:570) 2007-01-16 16:27:10 StandardContext[/manager]HTMLManager: managerServlet.extract[/srv/www/tomcat/demoserver/webapps/dbtest.war] java.util.zip.ZipException: No such file or directory /srv/www/tomcat/demoserver/webapps/dbtest.war at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.<init>(ZipFile.java:140) at java.util.jar.JarFile.<init>(JarFile.java:160) at java.util.jar.JarFile.<init>(JarFile.java:125) at org.apache.catalina.manager.ManagerServlet.extractXml(ManagerServlet.java:1514) at org.apache.catalina.manager.HTMLManagerServlet.doPost(HTMLManagerServlet.java:283) at javax.servlet.http.HttpServlet.service(HttpServlet.java:763) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:245) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:199) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:587) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:184) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:833) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:732) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:619) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:688) at java.lang.Thread.run(Thread.java:570)
17. Januar 200718 j Hallo, für mich sieht das nach einem Berechtigungsproblem aus. Könntest Du bitte mal die Ausgabe von folgendem Kommando posten bzw. überprüfen: ls -l /srv/www/tomcat/demoserver/
17. Januar 200718 j Das habe ich auch schon überprüft, aber daran liegt es nicht ls -l /srv/www/tomcat/demoserver/ total 8 lrwxrwxrwx 1 tomcat tomcat 22 Jul 4 2006 conf -> /etc/tomcat/demoserver lrwxrwxrwx 1 tomcat tomcat 26 Jul 4 2006 logs -> /var/log/tomcat/demoserver drwxr-xr-x 2 tomcat tomcat 4096 Feb 14 2004 temp drwxr-xr-x 6 tomcat tomcat 4096 Jul 29 2005 webapps lrwxrwxrwx 1 tomcat tomcat 28 Jul 4 2006 work -> /var/cache/tomcat/demoserver
17. Januar 200718 j Gut die Links passen so wie es aussieht schon mal (von den Rechten her), wie siehts mit den Tatsächlichen Pfaden aus? Mach doch mal folgendes, wobei mich letzteres Kommando eigentlich interessiert: ls -ld /etc/tomcat/demoserver ls -ld /var/log/tomcat/demoserver ls -ld /var/cache/tomcat/demoserver
17. Januar 200718 j Ok, hier ist die Ausgabe der einzelnen Kommandos: ls -ld /etc/tomcat/demoserver drwxr-xr-x 3 tomcat tomcat 400 Jan 17 10:31 /etc/tomcat/demoserver ls -ld /var/log/tomcat/demoserver drwxr-xr-x 2 tomcat tomcat 608 Jan 17 09:05 /var/log/tomcat/demoserver ls -ld /var/cache/tomcat/demoserver drwxr-xr-x 3 tomcat tomcat 72 Jul 29 2005 /var/cache/tomcat/demoserver
17. Januar 200718 j OK, denke das passt auch, bisher fällt mir dazu nichts ein. Deshalb bitte mal die tomcat-users.xml und server.xml posten.
17. Januar 200718 j Hier sind die gewünschten Dateien: tomcat-users.xml<?xml version='1.0' encoding='utf-8'?> <tomcat-users> <role rolename="tomcat"/> <role rolename="role1"/> <role rolename="manager"/> <role rolename="admin"/> <user username="tomcat" password="tomcat" roles="tomcat"/> <user username="role1" password="tomcat" roles="role1"/> <user username="both" password="tomcat" roles="tomcat,role1"/> <user username="test" password="test" roles="admin,manager"/> </tomcat-users> server.xml findest du im Anhang.server.xml.txt
17. Januar 200718 j Hallo, auf die schnelle würde ich die Fehlermeldung in eine Suchmaschine pasten. Und wenn Du dazu nichts findest, das ganze nochmals versuchen, jedoch mit einer angepassten server.xml. Ich würde das Debugging hochsetzen und die Logfile ausgabe kontrollieren. Weiter würde ich den Timeout vorerst auf 0 setzen (also disablen), auch wenn es durch einen andren Parameter bereits der Fall sein sollte. Ist denn das war (WebArchive) sehr groß??? Also inetwa so: <!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8080 --> <Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="[b]1[/b]" connectionTimeout="[b]0[/b]" disableUploadTimeout="true" /> <!-- Note : To disable connection timeouts, set connectionTimeout value to 0 --> Weiterhin kannst Du noch versuche die tomcat-users.xml so anzupassen, dass Du dem user test nur die Rolle manager verpasst. tomcat-users.xml<?xml version='1.0' encoding='utf-8'?> <tomcat-users> ... <user username="test" password="test" roles="manager"/> </tomcat-users> Beim verändern der Konfigurationsdateien würde ich grundsätzlich den Tomcat durchstarten. Was mich auch noch interessieren würde ist, dass wenn du das besagte war File manuell (also nicht via Upload funktion und AutoDeploy) in den webapps Ordner reinschmeißt und den Tomcat durchstartest, was dann passiert - wir da war File ausgepackt??? Also entsteht ein Ordner webapps/dbtest/ ???
17. Januar 200718 j Danke erst mal für deine Hilfe! Es hat jetzt funktioniert. Ich bin drauf gekommen, als ich versucht habe, dass File direkt auf dem Server zu spielen, die Partion war voll :floet: Jetzt habe ich noch eine Platte drangehängt und Tomcat restartet und siehe da es Funktioniert. THX :marine
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.