¿Cómo resolver el error StandardWrapperValve en Catalina?
-
21-09-2019 - |
Pregunta
Estoy creando una aplicación de registro con la validación y el Captcha (usando SimpleCaptcha). Soy capaz de desplegar mi aplicación en el servidor local y todo funciona perfectamente inclusive del código de imagen.
Sin embargo, cuando se despliega el archivo de la guerra a un servidor de prueba, mi código de imagen no está funcionando, y aquí es una salida del archivo de registro:
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:111)
Servlet SimpleCaptchaServlet is currently unavailable
Yo registro mi SimpleCaptchaServlet en el web.xml, y puedo localizar el archivo de clase para ese servlet, pero todavía no puede localizar el problema. ¿Se puede saber cómo puedo solucionar este problema?
Aquí está el 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>
Muchas gracias.
Solución 2
Gracias por ayudarme. Me las arreglé para conseguir mi problema fijo. Es un problema con el Java 2 SDK existente en el servidor, no corriendo Java EE 5. Está anticuado, y el uso de Tomcat 5.5. Al crear una nueva instancia de Tomcat Java y (ya que hay todavía algunas aplicaciones que se ejecutan en la versión anterior), todo funciona bien.
Para cualquier persona que han pasado a cumplir con este problema similar como el mío, que es o actualizar la última Jave 2 SDK y Tomcat, o degradar su guión a la antigua versión compatible.
Otros consejos
Su servlet no desplegó correctamente, debería ver un seguimiento de pila o un mensaje en la consola Tomcat durante el despliegue. Si usted envió sus contenidos web.xml
, que podría darnos una pista.