Wie StandardWrapperValve Fehler auf Catalina zu lösen?
-
21-09-2019 - |
Frage
Ich schaffe ein Anmelde Anwendung bei der Validierung und Check Captcha (mit SimpleCaptcha). Ich bin in der Lage meine Anwendung auf localhost zu implementieren und alles funktioniert perfekt inklusive des Captcha.
Aber wenn die WAR-Datei auf einen Testserver bereitgestellt, mein Captcha nicht funktioniert, und hier ist ein Ausgang aus der Protokolldatei:
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:111)
Servlet SimpleCaptchaServlet is currently unavailable
Ich habe meine SimpleCaptchaServlet auf dem web.xml registrieren, und ich kann die Klassendatei für das Servlet finden, aber nach wie vor nicht in der Lage, das Problem zu lokalisieren. Darf ich weiß, wie kann ich dieses Problem beheben?
Hier ist die web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>SignupProcessServlet</servlet-name>
<servlet-class>com.example.controller.SignupProcessServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>SignupSuccessServlet</servlet-name>
<servlet-class>com.example.view.SignupSuccessServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>SignupServlet</servlet-name>
<servlet-class>com.example.view.SignupServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>SimpleCaptchaServlet</servlet-name>
<servlet-class>com.example.controller.SimpleCaptchaServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>SignupProcessServlet</servlet-name>
<url-pattern>/signup_process.do</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SignupSuccessServlet</servlet-name>
<url-pattern>/signup_success.view</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SignupServlet</servlet-name>
<url-pattern>/signup.view</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SimpleCaptchaServlet</servlet-name>
<url-pattern>/captchaImg</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>signup.html</welcome-file>
</welcome-file-list>
Vielen Dank.
Lösung 2
Danke, dass ich helfen. Ich schaffte es mein Problem behoben. Es ist ein Problem mit dem vorhandenen Java 2 SDK auf dem Server, nicht Java EE 5. Es ist veraltet, und mit Tomcat 5.5 ausgeführt wird. Nach einem neuen Java-Erstellung und Tomcat-Instanz (wie es noch einige Anwendungen, die auf der alten Version ausgeführt wird), alles funktioniert gut.
Für alle, die mit diesem ähnlichen Problem zu begegnen geschehen wie mein, es ist entweder den neuesten jave 2 sdk und tomcat aktualisieren oder Herabstufung Ihres Skripts auf die alte Version kompatibel.
Andere Tipps
Ihr Servlet implementieren nicht korrekt, sollten Sie einen Stack-Trace oder eine Nachricht auf der Konsole tomcat während des Einsatzes sehen. Wenn Sie Ihren web.xml
Inhalt geschrieben, das könnte uns gibt einen Anhaltspunkt.