Olá a todos,
Estou com um problema que já ficou sem lógica nenhuma.
Adicionei um código para o upload de arquivos em um servlet que estava funcionando, mas apareceu o seguinte erro no log Tomcat:
07/12/2012 13:11:29 org.apache.catalina.core.StandardWrapperValve invoke
GRAVE: Servlet.service() for servlet [GravarPerfil] in context with path [/programars] threw exception [Servlet execution threw an exception] with root cause
java.lang.ClassNotFoundException: org.apache.commons.io.output.DeferredFileOutputStream
Até aí tudo bem, a causa era a falta da commons-io.jar (a commons-fileupload.jar precisa dela), adicionei ela nas bibliotecas do projeto (as últimas versões) mas o erro continuou.
Em certa altura da “briga” com esse erro, comentei todo o código relativo ao upload de arquivo, o erro continuou sendo acusado como vindo do servlet [GravarPerfil], mas removi todo o código referente ao uso dessas libs de lá, inclusive os imports. O servlet está exatamente igual antes, mas o erro continua como se o código novo ainda estivesse no servlet.
Já tentei, remover as libs do projeto, reiniciar o Netbeans, dei Limpar e Construir (e Limpar) no projeto, verifiquei se tinha um .class de servlet que não foi apagado, alguma referência em algum XML do Tomcat incluindo a pasta Catalina Base, não encontrei nada, é como se o erro estivesse vindo do nada, não tem nada mais no código do projeto fazendo referências a alguma classe dessas libs (elas nem mesmo estão mais incluídas no projeto).
A única coisa que faz sentido que seja é o Tomcat estar carregando uma versão compilada anterior do Servlet, se for esse o problema ele começou quando rodei o projeto sem a commons-io.jar, só não consegui achar onde fica isso.
Estou usando o Tomcat 7.0.27.0 instalado junto com o Netbeans 7.2.
[]'s
Luciano R Machado