2013-03-12 10 views
5

bereitgestellt werden. Ich werde Sie über alle Schritte informieren, die ich durchgeführt habe. Ich werde auch ein paar Bilder geben, um mein Problem leichter verständlich zu machen. Jede Empfehlung wird nett sein.Die von Eclipse erstellte WAR-Datei kann nicht ordnungsgemäß auf Tomcat

Notwendige zu sagen, dass ich

Tomcat 6 (instaliert auf C: \ Programme \ Apache Software Foundation \ Tomcat 6.0) verwenden

Eclipse-3.7 (Indigo)

Google-Plugin für Eclipse 3.7 (für die Arbeit mit GWT)

in eclipse ich habe einen Server erstellt enter image description here ich habe $ CATALINA_HOME auf C gesetzt: \ Programme \ Apache Software Foundation \ Tomcat 6.0

Ich sollte auch sagen, dass es eine Ausnahme gibt, wenn ich versuche, Tomcat von Eclipse zu starten (ich meine R-Klick auf Server -> Start).

INFO: Starting Servlet Engine: Apache Tomcat/6.0.36 
12 бер 2013 17:01:38 org.apache.catalina.startup.HostConfig deployDirectory 
INFO: Deploying web application directory docs 
12 бер 2013 17:01:38 org.apache.jasper.EmbeddedServletOptions <init> 
SEVERE: The scratchDir you specified: C:\Program Files\Apache Software Foundation\Tomcat 6.0\work\Catalina\localhost\docs is unusable. 
12 бер 2013 17:01:38 org.apache.catalina.startup.HostConfig deployDirectory 
INFO: Deploying web application directory helloserver 
12 бер 2013 17:01:38 org.apache.jasper.EmbeddedServletOptions <init> 
SEVERE: The scratchDir you specified: C:\Program Files\Apache Software Foundation\Tomcat 6.0\work\Catalina\localhost\helloserver is unusable. 
12 бер 2013 17:01:38 org.apache.catalina.startup.HostConfig deployDirectory 
INFO: Deploying web application directory manager 
12 бер 2013 17:01:38 org.apache.catalina.startup.HostConfig deployDirectory 
SEVERE: Error deploying web application directory manager 
java.io.FileNotFoundException: C:\Program Files\Apache Software Foundation\Tomcat 6.0\conf\Catalina\localhost\manager.xml (The system cannot find the path specified) 
    at java.io.FileOutputStream.open(Native Method) 
    at java.io.FileOutputStream.<init>(FileOutputStream.java:194) 
    at java.io.FileOutputStream.<init>(FileOutputStream.java:145) 
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1051) 
    at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1002) 
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:506) 
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317) 
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324) 
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142) 
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065) 
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:840) 
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057) 
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463) 
    at org.apache.catalina.core.StandardService.start(StandardService.java:525) 
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:754) 
    at org.apache.catalina.startup.Catalina.start(Catalina.java:595) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:597) 
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) 
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) 
12 бер 2013 17:01:38 org.apache.catalina.startup.HostConfig deployDirectory 
INFO: Deploying web application directory ROOT 
12 бер 2013 17:01:38 org.apache.jasper.EmbeddedServletOptions <init> 
SEVERE: The scratchDir you specified: C:\Program Files\Apache Software Foundation\Tomcat 6.0\work\Catalina\localhost\_ is unusable. 
12 бер 2013 17:01:38 org.apache.coyote.http11.Http11Protocol start 
INFO: Starting Coyote HTTP/1.1 on http-8080 
12 бер 2013 17:01:38 org.apache.jk.common.ChannelSocket init 
INFO: JK: ajp13 listening on /0.0.0.0:8009 
12 бер 2013 17:01:38 org.apache.jk.server.JkMain start 
INFO: Jk running ID=0 time=0/28 config=null 
12 бер 2013 17:01:38 org.apache.catalina.startup.Catalina start 
INFO: Server startup in 722 ms 

Ich habe überprüft, dass ich keine Verzeichnisse im Verzeichnis conf habe.

gut aussehen, was ich als nächstes tun (ich benutze dieses Handbuch http://courses.coreservlets.com/Course-Materials/pdf/ajax/GWT-Intro.pdf):

1) Erstellen Sie eine neue Web Application Project (GWT). Es funktioniert gut auf Jetty

2) Dann muss ich eine WAR-Datei exportieren. enter image description here

3) Das erste Problem (und die wichtigsten glaube ich): dass WAR-Datei nicht auf C geht: \ Programme \ Apache Software Foundation \ Tomcat 6.0 \ webapps. Aber es geht nach c: \ Benutzer \ Benutzername \ AppData \ Local \ VirtualStore \ Programme \ Apache Software Foundation \ Tomcat 6.0 \ webapps \. Außerdem versuche ich ein dynamisches Webprojekt zu erstellen und versuche es auf dem Server auszuführen (r-klick -> Ausführen als -> Ausführen auf Server). Und dann wird es im selben Verzeichnis bereitgestellt (ich meine c: \ Benutzer \ Benutzername \ AppData \ Local \ VirtualStore \ Programme \ Apache Software Foundation \ Tomcat 6.0 \ Webapps). Ich verstehe nicht warum! Was ist der Grund?

4) Dann versuche ich WAR-Datei (ich meine GWT-Projekt wieder) auf dem Desktop zu exportieren. Es geht gut und dann manuell die Kriegsdatei zu C: \ Programme \ Apache Software Foundation \ Tomcat 6.0 \ Webapps (Tomcat arbeitet noch).

5) Ein anderes Problem ist, dass Tomcat WAR-Datei nicht entpackt. Und ich bekomme kein Ergebnis, wenn ich versuche, es in einen Webbrowser zu laden (http://localhost:8080/helloserver). Und dann entpacke ich die WAR-Datei manuell und lege das helloserver-Verzeichnis in die Webapps und es funktioniert! Alles funktioniert gut.

Antwort

2

Der anfängliche Fehler in der Protokolldatei deutet darauf hin, dass Sie die Tomcat-Anwendung manager nicht installiert haben (oder sie ist vielleicht installiert, aber nur falsch konfiguriert/deaktiviert).

Versuchen zu überprüfen, ob die manager Anwendung durch das Surfen

http://youmachine.domain:8080/manager/html

funktionsfähig ist und wenn Sie die Liste der installierten Web-Anwendungen und sehen, anmelden können, dann wissen Sie Ihren Kater-Manager-Anwendung funktionsfähig ist.

Ich nehme an und nehme an, dass die folgenden Probleme von Versuchen herrühren (entweder von Ihnen initiiert, um es zum Laufen zu bringen, oder als Fallback von Windows/Eclipse initiiert), um eine Dateikopierbereitstellung zu verwenden Schema, und es wird umgeleitet, da dies eine lokale für die Anwendung Speicherschema ist.

Sie wollen wirklich die WAR über die Manager-Anwendung hochladen, nicht versuchen, das Kopierschema zu reparieren, wie es Amok mit dem virtuellen Speicherkonfiguration-Programm auf den letzten Windows-Systemen läuft.

+0

Probieren http: //youmachine.domain: 8080/manager/html gibt mir 404-Fehler. Jetzt werde ich meinen Tomcat neu installieren. Hoffe es wird helfen. –

+1

@AntonKasyanchuk Ich hoffe, Sie haben tatsächlich versucht, den Hostnamen und Port-Nubmer Ihres Rechners zu öffnen. Da ich bezweifle, dass Ihre Maschine "yourmachine.domain" heißt. Ein 404 bedeutet jedoch nicht, dass Ihr Tomcat falsch installiert ist, wenn http: //Ihremachine.domain: 8080/funktioniert. Das bedeutet, dass Sie die zusätzlichen Schritte zum Installieren/Aktivieren der Manager-Webanwendung befolgen müssen, die standardmäßig deaktiviert ist (da es sich um eine gute Sicherheitslücke mit einer Standardpassworteinrichtung handelt). –

+0

mymachine.domain: 8080 funktioniert gut. Wie kann ich die Manager-Webanwendung aktivieren? –