# Deploy war/ear to tomcat failed

**URL:** <https://community.jenkins.io/t/deploy-war-ear-to-tomcat-failed/5181>\
**Category:** Ask a question\
**Created:** [January 3, 2023, 6:15am UTC](https://community.jenkins.io/t/deploy-war-ear-to-tomcat-failed/5181 "2023-01-03T06:15:15Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![frank](https://dub1.discourse-cdn.com/flex013/user_avatar/community.jenkins.io/frank/32/3052_2.png) [@frank](https://community.jenkins.io/u/frank)\
**Post date:** [January 3, 2023, 6:15am UTC](https://community.jenkins.io/t/deploy-war-ear-to-tomcat-failed/5181/1 "2023-01-03T06:15:15Z")

</div>

Jenkins 2.361.2, tomcat is 9.x, Deploy to container Plugin Version 1.16  
and jdk is 8.

the error is:

```auto
10:56:23 Deploying [/home/jenkins/workspace/Branch/Sprint72/wars/xx.war]
10:56:23 ERROR: Build step failed with exception
10:56:23 org.codehaus.cargo.container.ContainerException: Failed to deploy [/home/jenkins/workspace/Branch/Sprint72/wars/xx.war]
10:56:23 at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.deploy(AbstractTomcatManagerDeployer.java:104)
10:56:23 at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:172)
10:56:23 at hudson.plugins.deploy.CargoContainerAdapter.deploy(CargoContainerAdapter.java:81)
10:56:23 at hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:167)
10:56:23 at hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:136)
10:56:23 at hudson.FilePath.act(FilePath.java:1192)
10:56:23 at hudson.FilePath.act(FilePath.java:1175)
10:56:23 at hudson.plugins.deploy.CargoContainerAdapter.redeployFile(CargoContainerAdapter.java:133)
10:56:23 at hudson.plugins.deploy.PasswordProtectedAdapterCargo.redeployFile(PasswordProtectedAdapterCargo.java:95)
10:56:23 at hudson.plugins.deploy.DeployPublisher.perform(DeployPublisher.java:113)
10:56:23 at jenkins.tasks.SimpleBuildStep.perform(SimpleBuildStep.java:123)
10:56:23 at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:80)
10:56:23 at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:47)
10:56:23 at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:816)
10:56:23 at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:765)
10:56:23 at hudson.model.Build$BuildExecution.post2(Build.java:179)
10:56:23 at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:709)
10:56:23 at hudson.model.Run.execute(Run.java:1924)
10:56:23 at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:44)
10:56:23 at hudson.model.ResourceController.execute(ResourceController.java:107)
10:56:23 at hudson.model.Executor.run(Executor.java:449)
10:56:23 Caused by: java.io.IOException: Error writing request body to server
10:56:23 at java.base/sun.net.www.protocol.http.HttpURLConnection$StreamingOutputStream.checkError(HttpURLConnection.java:3668)
10:56:23 at java.base/sun.net.www.protocol.http.HttpURLConnection$StreamingOutputStream.write(HttpURLConnection.java:3651)
10:56:23 at java.base/java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:81)
10:56:23 at java.base/java.io.BufferedOutputStream.write(BufferedOutputStream.java:127)
10:56:23 at org.codehaus.cargo.container.tomcat.internal.TomcatManager.pipe(TomcatManager.java:827)
10:56:23 at org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:574)
10:56:23 at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deployImpl(TomcatManager.java:767)
10:56:23 at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deploy(TomcatManager.java:312)
10:56:23 at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.deploy(AbstractTomcatManagerDeployer.java:99)
10:56:23 ... 20 more
10:56:23 java.io.IOException: Error writing request body to server
10:56:23 at java.base/sun.net.www.protocol.http.HttpURLConnection$StreamingOutputStream.checkError(HttpURLConnection.java:3668)
10:56:23 at java.base/sun.net.www.protocol.http.HttpURLConnection$StreamingOutputStream.write(HttpURLConnection.java:3651)
10:56:23 at java.base/java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:81)
10:56:23 at java.base/java.io.BufferedOutputStream.write(BufferedOutputStream.java:127)
10:56:23 at org.codehaus.cargo.container.tomcat.internal.TomcatManager.pipe(TomcatManager.java:827)
10:56:23 at org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:574)
10:56:23 at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deployImpl(TomcatManager.java:767)
10:56:23 at org.codehaus.cargo.container.tomcat.internal.TomcatManager.deploy(TomcatManager.java:312)
10:56:23 at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.deploy(AbstractTomcatManagerDeployer.java:99)
10:56:23 at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:172)
10:56:23 at hudson.plugins.deploy.CargoContainerAdapter.deploy(CargoContainerAdapter.java:81)
10:56:23 at hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:167)
10:56:23 at hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:136)
10:56:23 at hudson.FilePath.act(FilePath.java:1192)
10:56:23 at hudson.FilePath.act(FilePath.java:1175)
10:56:23 at hudson.plugins.deploy.CargoContainerAdapter.redeployFile(CargoContainerAdapter.java:133)
10:56:23 at hudson.plugins.deploy.PasswordProtectedAdapterCargo.redeployFile(PasswordProtectedAdapterCargo.java:95)
10:56:23 at hudson.plugins.deploy.DeployPublisher.perform(DeployPublisher.java:113)
10:56:23 at jenkins.tasks.SimpleBuildStep.perform(SimpleBuildStep.java:123)
10:56:23 at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:80)
10:56:23 at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:47)
10:56:23 at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:816)
10:56:23 at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:765)
10:56:23 at hudson.model.Build$BuildExecution.post2(Build.java:179)
10:56:23 at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:709)
10:56:23 at hudson.model.Run.execute(Run.java:1924)
10:56:23 at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:44)
10:56:23 at hudson.model.ResourceController.execute(ResourceController.java:107)
10:56:23 at hudson.model.Executor.run(Executor.java:449)
10:56:23 Build step 'Deploy war/ear to a container' marked build as failure
10:56:23 Finished: FAILURE

```

there is no problem before, but now this error happens.  
however if I restart tomcat, and re-deploy, it can be success.

how can I debug and solve this problem?

---

<div class="post-metadata">

**Author:** ![PierreBtz](https://dub1.discourse-cdn.com/flex013/user_avatar/community.jenkins.io/pierrebtz/32/55_2.png) [@PierreBtz](https://community.jenkins.io/u/PierreBtz)\
**Post date:** [January 3, 2023, 8:57am UTC](https://community.jenkins.io/t/deploy-war-ear-to-tomcat-failed/5181/2 "2023-01-03T08:57:56Z")

</div>

This looks similar to [JENKINS-10320](https://issues.jenkins.io/browse/JENKINS-10320), maybe some answers in this issue can help you?

---

<div class="post-metadata">

**Author:** ![bpedersen2](https://dub1.discourse-cdn.com/flex013/user_avatar/community.jenkins.io/bpedersen2/32/367_2.png) [@bpedersen2](https://community.jenkins.io/u/bpedersen2)\
**Post date:** [January 3, 2023, 12:48pm UTC](https://community.jenkins.io/t/deploy-war-ear-to-tomcat-failed/5181/3 "2023-01-03T12:48:10Z")

</div>

> [@frank](#):
>
> Jenkins 2.361.2,

You should always check the Release notes[1]:

> Upgrading to Jenkins 2.361.1  
> Jenkins requires Java 11 or newerBlockquote

[1] [Upgrading to Jenkins LTS 2.361.x](https://www.jenkins.io/doc/upgrade-guide/2.361/)
