Pergunta

Estou criando um aplicativo de inscrição com validação e captcha (usando o SimpleCaptcha). Sou capaz de implantar meu aplicativo no localhost e tudo funciona perfeitamente, inclusive o Captcha.

Mas quando implantou o arquivo de guerra em um servidor de teste, meu Captcha não está funcionando e aqui está uma saída do arquivo de log:

org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:111) 
Servlet SimpleCaptchaServlet is currently unavailable

Registrei meu SimpleCaptChaservlet no web.xml e posso localizar o arquivo de classe para esse servlet, mas ainda não consigo localizar o problema. Posso saber como posso corrigir esse problema?

Aqui está o 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>

Muito obrigado.

Foi útil?

Solução 2

Obrigado por me ajudar. Consegui resolver meu problema. É um problema com o Java 2 SDK existente no servidor, não executando o Java EE 5. Está desatualizado e usando o TomCat 5.5. Ao criar uma nova instância Java e Tomcat (como ainda existem alguns aplicativos em execução na versão antiga), tudo funciona bem.

Para quem já se encontrou com esse problema semelhante ao meu, é você atualizar o mais recente Jave 2 SDK e Tomcat, ou downgrade seu script para a versão antiga compatível com a versão.

Outras dicas

Seu servlet não implantou corretamente, você deve ver um rastreamento ou mensagem de pilha no console do tomcat durante a implantação. Se você postou seu web.xml Conteúdo, isso pode nos dar uma pista.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top