2016-03-22 7 views
0

Ich installierte Apache-Server (Tomcat 7,63) auf Client-Rechner (Windows 7-System 32-Bit), Die Java-Version in Client-Rechner verwendet wird (JDK 1.8 Update 60)Apache Tomcat Startseite nicht kommen

Problem

Tomcat-Server wird gestartet, indem die Datei (... \ bin \ Tomcat7.exe) ausgeführt wird. Aber als ich versuchte, die Homepage zu öffnen (http://localhost:8080/) es kommt nicht auf Browser und ich kann die folgende Ausnahme auf Apache Protokoll siehe:

org.apache.coyote.AbstractProtocol$AbstractConnectionHandler process 
SEVERE: Error reading request, ignored 
java.lang.ExceptionInInitializerError 
at java.lang.Class.forName0(Native Method) 
at java.lang.Class.forName(Unknown Source) 
at sun.nio.cs.AbstractCharsetProvider.lookup(Unknown Source) 
at sun.nio.cs.AbstractCharsetProvider.access$000(Unknown Source) 
at sun.nio.cs.AbstractCharsetProvider$1.next(Unknown Source) 
at sun.nio.cs.AbstractCharsetProvider$1.next(Unknown Source) 
at java.nio.charset.Charset.put(Unknown Source) 
at java.nio.charset.Charset.access$200(Unknown Source) 
at java.nio.charset.Charset$3.run(Unknown Source) 
at java.nio.charset.Charset$3.run(Unknown Source) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.nio.charset.Charset.availableCharsets(Unknown Source) 
at org.apache.tomcat.util.buf.B2CConverter.<clinit>(B2CConverter.java:51 
) 
at org.apache.tomcat.util.buf.ByteChunk.<clinit>(ByteChunk.java:102) 
at org.apache.tomcat.util.buf.MessageBytes.<init>(MessageBytes.java:58) 
at org.apache.tomcat.util.buf.MessageBytes.<init>(MessageBytes.java:36) 
at org.apache.tomcat.util.buf.MessageBytes$MessageBytesFactory.newInstan 
ce(MessageBytes.java:685) 
at org.apache.tomcat.util.buf.MessageBytes.newInstance(MessageBytes.java 
:78) 
at org.apache.coyote.Request.<init>(Request.java:83) 
at org.apache.coyote.AbstractProcessor.<init>(AbstractProcessor.java:61) 

at org.apache.coyote.http11.AbstractHttp11Processor.<init>(AbstractHttp1 
1Processor.java:273) 
at org.apache.coyote.http11.Http11Processor.<init>(Http11Processor.java: 
56) 
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.creat 
eProcessor(Http11Protocol.java:165) 
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.creat 
eProcessor(Http11Protocol.java:103) 
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(
AbstractProtocol.java:586) 
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoin 
t.java:316) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskTh 
read.java:61) 
at java.lang.Thread.run(Unknown Source) 
Caused by: java.lang.NullPointerException 
at sun.nio.cs.CharsetMapping.load(Unknown Source) 
at sun.nio.cs.CharsetMapping$1.run(Unknown Source) 
at sun.nio.cs.CharsetMapping$1.run(Unknown Source) 
at java.security.AccessController.doPrivileged(Native Method) 
at sun.nio.cs.CharsetMapping.get(Unknown Source) 
at sun.nio.cs.ext.SJIS_0213$1.run(Unknown Source) 
at sun.nio.cs.ext.SJIS_0213$1.run(Unknown Source) 
at java.security.AccessController.doPrivileged(Native Method) 
at sun.nio.cs.ext.SJIS_0213.<clinit>(Unknown Source) 
... 30 more 

Exception in thread "http-bio-8085-exec-1" java.lang.NullPointerException 
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(
AbstractProtocol.java:731) 
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoin 
t.java:316) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskTh 
read.java:61) 
at java.lang.Thread.run(Unknown Source) 

Was mir wirklich seltsam ist, dass, wenn ich Apache-Server von Dienstleistungen starten Management Console aus dem Administrator-Konto: Verwaltung -> Dienste, es funktioniert gut und ich kann sehen, dass die Homepage (http://localhost:8080/) auf Browser kommt.

Frage

Warum Apache-Homepage nicht kommt, wenn wir Apache-Server mit der EXE-Datei (... \ bin \ Tomcat7.exe) laufen? Warum wird die Startseite angezeigt, wenn der Server den Windows-Dienst gestartet hat? In beiden Fällen wird dieselbe .exe-Datei ausgeführt, um den Server auszuführen. Worin besteht der Unterschied zwischen den beiden Fällen?

+0

Überprüfen Sie die Service-Konfiguration, Sie liefern nicht die gleichen Parameter. –

+0

@ElliottFrisch Wie kann ich die Parameter in den beiden Fällen vergleichen? Im Servicefall klicke ich mit der rechten Maustaste auf den Tomcat-Dienst und ich kann sehen, dass keine Parameter (Startparameter) in der Leiste übergeben wurden. Können Sie mir sagen, wo ich die Parameter in beiden Fällen finden kann? – Salman

Antwort

2

Tomcat kann nicht mit dem exe direkt gestartet werden (es sei denn, die richtigen Parameter geliefert werden), sollten Sie eine der mitgelieferten .bat Dateien verwenden, wenn Sie das tun wollen: startup.bat

Nur sicher sein, Ihre Umgebung zu definieren, Variablen wie JAVA_HOME und/oder JRE_HOME

+0

Ich habe versucht, Tomcat-Server mit (... \ bin \ startup.bat) aber die gleiche Ausnahme ausgelöst. Ich habe auch 'JAVA_HOME' überprüft und es zeigt auf den richtigen Ort. – Salman