Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Tomcat retorna erro ao fazer o deploy

Estou realizando o curso em um ambiente Windows. Tudo correu normalmente no deploy da aplicação de acordo com o log, exceto no último passo quando tenho a seguinte exceção:

Deploying C:\Users\dfrederi\.jenkins\workspace\argentum-web\target\argentum-web.war to container Tomcat 8.x Remote with context 
  Redeploying [C:\Users\dfrederi\.jenkins\workspace\argentum-web\target\argentum-web.war]
  Undeploying [C:\Users\dfrederi\.jenkins\workspace\argentum-web\target\argentum-web.war]
  Deploying [C:\Users\dfrederi\.jenkins\workspace\argentum-web\target\argentum-web.war]
ERROR: Build step failed with exception
org.codehaus.cargo.container.ContainerException: Failed to deploy [C:\Users\dfrederi\.jenkins\workspace\argentum-web\target\argentum-web.war]
    at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.deploy(AbstractTomcatManagerDeployer.java:106)
    at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:184)
    at hudson.plugins.deploy.CargoContainerAdapter.deploy(CargoContainerAdapter.java:77)
    at hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:147)
    at hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:117)
    at hudson.FilePath.act(FilePath.java:1074)
    at hudson.FilePath.act(FilePath.java:1057)
    at hudson.plugins.deploy.CargoContainerAdapter.redeploy(CargoContainerAdapter.java:114)
    at hudson.plugins.deploy.PasswordProtectedAdapterCargo.redeploy(PasswordProtectedAdapterCargo.java:93)
    at hudson.plugins.deploy.DeployPublisher.perform(DeployPublisher.java:64)
    at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:45)
    at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:744)
    at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:690)
    at hudson.model.Build$BuildExecution.post2(Build.java:186)
    at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:635)
    at hudson.model.Run.execute(Run.java:1841)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
    at hudson.model.ResourceController.execute(ResourceController.java:97)
    at hudson.model.Executor.run(Executor.java:429)
Caused by: org.codehaus.cargo.container.tomcat.internal.TomcatManagerException: The Tomcat Manager responded "FAIL - Deployed application at context path [/argentum-web] but context failed to start
" instead of the expected "OK" message
    at org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:715)
    at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deployImpl(TomcatManager.java:761)
    at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deploy(TomcatManager.java:312)
    at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.deploy(AbstractTomcatManagerDeployer.java:101)
    ... 18 more
org.codehaus.cargo.container.tomcat.internal.TomcatManagerException: The Tomcat Manager responded "FAIL - Deployed application at context path [/argentum-web] but context failed to start
" instead of the expected "OK" message
    at org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:715)
    at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deployImpl(TomcatManager.java:761)
    at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deploy(TomcatManager.java:312)
    at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.deploy(AbstractTomcatManagerDeployer.java:101)
    at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:184)
    at hudson.plugins.deploy.CargoContainerAdapter.deploy(CargoContainerAdapter.java:77)
    at hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:147)
    at hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:117)
    at hudson.FilePath.act(FilePath.java:1074)
    at hudson.FilePath.act(FilePath.java:1057)
    at hudson.plugins.deploy.CargoContainerAdapter.redeploy(CargoContainerAdapter.java:114)
    at hudson.plugins.deploy.PasswordProtectedAdapterCargo.redeploy(PasswordProtectedAdapterCargo.java:93)
    at hudson.plugins.deploy.DeployPublisher.perform(DeployPublisher.java:64)
    at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:45)
    at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:744)
    at hudson.model.AbstractBuild$Abstrac

Tentei realizar a operação tanto no Tomcat 7 quanto no 8.5 e tive o mesmo erro.

4 respostas

Oi Denis,

Já vi este erro acontecer em um programa que o Context Path (ou o Context Root) não eram únicos, e estavam conflitando com algum que já existia no Tomcat com o mesmo nome.

Vai no server.xml da sua aplicação Java e tenta colocar um nome que você tem certeza que é único, aí tenta dar o deploy, se não der certo, manda mensagem aqui no fórum de novo.

Giovanni, eu não entendi qual exatamente é a alteração que você está sugerindo.

Tem um arquivo server.xml no Tomcat, é ele? O que exatamente eu deveria alterar nele?

Ou a alteração que você está sugerindo é no projeto java mesmo? Porque para isso há dois problemas: o primeiro é que eu não encontrei um server.xml nele. O segundo é que, mesmo que eu o encontrasse, o projeto está em um repositório git que é utilizado pelo instrutor do curso ao qual eu não tenho acesso para edição (e nem deveria: outros alunos também estão utilizando o mesmo projeto).

solução!

Desculpe, é no server.xml do Tomcat mesmo! tenta abrir ele com um editor de texto, e veja se não uma tag parecida com a abaixo:

...

Nessa parte do Context path, o valor que tá entre aspas não pode ser duplicado em outra tag.

Esse é uma das coisas que pode gerar esse tipo de erro, se mesmo assim continuar dando erro, fica uma pergunta. Se você desinstalar o Tomcat e remover as configurações, começar do zero, o erro persiste?

Oi, você não especificou para mim qual a linha do server.xml eu deveria alterar.

De qualquer forma eu tive alguns outros problemas com o Tomcat enquanto estava tentando investigar o problema e agora ele nem sobe mais (acredito que algum problema de compatibilidade com a JDK... o tomcat 9 funciona normalmente mas o plugin do jenkins não dá suporte para ele).

Eu meio que desisti de seguir esse passo, no momento para mim basta saber que a funcionalidade existe e qual o caminho para ela. Vou marcar o assunto como resolvido para vocês não ficarem com a pendência.

Obrigado pela atenção!