Hello Violeta - I finally cracked it. The problem was using the hash mark in the curl command. The ASCII equivalent value of %23 needs to be used instead of # value as seen here -
curl -v --upload-file /usr/share/tomcat/installs/sample.war -X PUT http://username:password@localhost:10080/manager/text/deploy?path=/sample-1.0%23%231.0.7&update=true OK - Deployed application at context path /sample-1.0##1.0.7 This then deploys as - $ curl -X GET http://username:password@localhost:10080/manager/text/list /manager:running:0:manager /sample-1.0:running:0:sample-1.0##1.0.7 And the content also works for undeploy, providing the hash symbol substitution is put in place - curl -v -X GET http://username:password@localhost:10080/manager/text/undeploy?path=/sample-1.0%23%231.0.7 OK - Undeployed application at context path /sample-1.0##1.0.7 Thanks to everyone for the help! From: Violeta Georgieva <miles...@gmail.com> To: Tomcat Users List <users@tomcat.apache.org>, Date: 13/07/2015 12:55 Subject: Re: Tomcat 8 - Manager Deploy Hi, 2015-07-13 14:48 GMT+03:00 <theo.swe...@avios.com>: > > Hello Again - I've ran a new test with a sample war file downloaded from - > > https://tomcat.apache.org/tomcat-6.0-doc/appdev/sample/sample.war > > The war is renamed as sample-1.0##v1.0.0.war > > This time the war deploys and starts but it doesn't honour the version > number given in the path - > > curl -v --upload-file /usr/share/tomcat/installs/sample-1.0##v1.0.0.war -X > PUT " > http://username:password@localhost :10080/manager/text/deploy?path=/sample-1.0##v1.0.0&update=true > " > If you need to specify a version that use the correct syntax: http://tomcat.apache.org/tomcat-8.0-doc/manager-howto.html#Supported_Manager_Commands path - The context path (including the leading slash) of the web application you are dealing with. To select the ROOT web application, specify "/". NOTE: It is not possible to perform administrative commands on the Manager application itself. version - The version of this web application as used by the parallel deployment feature, Regards, Violeta > View running webapps - > > $ curl -X GET http://tcsct:cbiw2PXB@localhost:10080/manager/text/list > OK - Listed applications for virtual host localhost > /manager:running:4:manager > /sample-1.0:running:0:sample-1.0 > > Instead I would expect to see - > > $ curl -X GET http://tcsct:cbiw2PXB@localhost:10080/manager/text/listOK - > Listed applications for virtual host localhost > /manager:running:4:manager > /sample-1.0:running:0:sample-1.0##v1.0.0 > > Is there a reason why the version number is being omitted? > > > > > From: Theo Sweeny/LGW/MILEAGE > To: "Tomcat Users List" <users@tomcat.apache.org>, > Date: 13/07/2015 08:33 > Subject: Re: Tomcat 8 - Manager Deploy > > > Hello Konstantin - thank you for the reply. > > So your deployment (upload) was successful, but the application itself is > broken and failed to start. > > If I take the same application and deploy it using deployOnStartup, it > deploys and starts without issue. This removes the possibility of there > being an issue with the war file. > > Here are the Catalina and Localhost logs - > > logs/catalina.2015-07-10.log:10-Jul-2015 11:20:54.560 INFO > [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR > Deploying web application archive > /opt/tomcat/webapps/address-information-ds-1.0.war > > logs/catalina.2015-07-10.log:10-Jul-2015 11:20:54.568 SEVERE > [localhost-startStop-1] > org.apache.catalina.startup.ContextConfig.beforeStart Exception fixing > docBase for context [/address-information-ds-1.0] > > logs/catalina.2015-07-10.log:10-Jul-2015 11:20:54.571 SEVERE > [localhost-startStop-1] > org.apache.catalina.core.ContainerBase.addChildInternal > ContainerBase.addChild: start: > > logs/catalina.2015-07-10.log:10-Jul-2015 11:20:54.572 SEVERE > [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR > Error deploying web application archive > /opt/tomcat/webapps/address-information-ds-1.0.war > > logs/catalina.2015-07-10.log:10-Jul-2015 11:20:54.573 INFO > [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR > Deployment of web application archive > /opt/tomcat/webapps/address-information-ds-1.0.war has finished in 13 ms > > logs/catalina.2015-07-10.log:10-Jul-2015 11:20:54.574 INFO > [localhost-startStop-1] > org.apache.catalina.startup.HostConfig.deployDirectory Deploying web > application directory /opt/tomcat/webapps/ROOT > > logs/catalina.2015-07-10.log:10-Jul-2015 11:20:55.031 INFO > [localhost-startStop-1] > org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web > application directory /opt/tomcat/webapps/ROOT has finished in 456 ms > > logs/catalina.2015-07-10.log:10-Jul-2015 11:20:55.031 INFO > [localhost-startStop-1] > org.apache.catalina.startup.HostConfig.deployDirectory Deploying web > application directory /opt/tomcat/webapps/host-manager > > logs/catalina.2015-07-10.log:10-Jul-2015 11:20:55.544 INFO > [localhost-startStop-1] > org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web > application directory /opt/tomcat/webapps/host-manager has finished in 513 > ms > > logs/catalina.2015-07-10.log:10-Jul-2015 11:20:55.545 INFO > [localhost-startStop-1] > org.apache.catalina.startup.HostConfig.deployDirectory Deploying web > application directory /opt/tomcat/webapps/manager > > logs/catalina.2015-07-10.log:10-Jul-2015 11:20:55.973 INFO > [localhost-startStop-1] > org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web > application directory /opt/tomcat/webapps/manager has finished in 427 ms > > logs/catalina.2015-07-10.log:10-Jul-2015 11:20:55.980 INFO [main] > org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler > ["http-nio-10080"] > > logs/catalina.2015-07-10.log:10-Jul-2015 11:20:55.990 INFO [main] > org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler > ["ajp-nio-10009"] > > logs/catalina.2015-07-10.log:10-Jul-2015 11:20:55.990 INFO [main] > org.apache.catalina.startup.Catalina.start Server startup in 58884 ms > > logs/localhost.2015-07-10.log:10-Jul-2015 11:20:42.779 INFO > [localhost-startStop-1] org.apache.catalina.core.ApplicationContext.log > Initializing Spring embedded WebApplicationContext > > logs/localhost.2015-07-10.log:10-Jul-2015 11:20:54.547 FINE > [localhost-startStop-1] > org.apache.catalina.core.StandardContext.listenerStart Sending application > start events > > logs/localhost.2015-07-10.log:10-Jul-2015 11:20:54.551 FINE > [localhost-startStop-1] > org.apache.catalina.core.StandardContext.filterStart Starting filters > > logs/localhost.2015-07-10.log:10-Jul-2015 11:20:54.552 FINE > [localhost-startStop-1] > org.apache.catalina.core.StandardContext.filterStart Starting filter > 'characterEncodingFilter' > > logs/localhost.2015-07-10.log:10-Jul-2015 11:20:54.554 FINE > [localhost-startStop-1] > org.apache.catalina.core.StandardContext.filterStart Starting filter > 'hiddenHttpMethodFilter' > > logs/localhost.2015-07-10.log:10-Jul-2015 11:20:54.554 FINE > [localhost-startStop-1] > org.apache.catalina.core.StandardContext.filterStart Starting filter > 'Tomcat WebSocket (JSR356) Filter' > > logs/localhost.2015-07-10.log:10-Jul-2015 11:20:54.555 FINE > [localhost-startStop-1] > org.apache.catalina.core.StandardContext.filterStart Starting filter > 'applicationContextIdFilter' > > logs/localhost.2015-07-10.log:10-Jul-2015 11:20:54.555 FINE > [localhost-startStop-1] > org.apache.catalina.core.StandardContext.filterStart Starting filter > 'webRequestLoggingFilter' > > logs/localhost.2015-07-10.log:10-Jul-2015 11:20:54.555 FINE > [localhost-startStop-1] > org.apache.catalina.core.StandardContext.filterStart Starting filter > 'errorPageFilter' > > logs/localhost.2015-07-10.log:10-Jul-2015 11:20:54.556 FINE > [localhost-startStop-1] > org.apache.catalina.core.StandardContext.filterStart Starting filter > 'metricFilter' > > logs/localhost.2015-07-10.log:10-Jul-2015 11:20:55.028 FINE > [localhost-startStop-1] > org.apache.catalina.core.StandardContext.listenerStart Sending application > start events > > logs/localhost.2015-07-10.log:10-Jul-2015 11:20:55.029 FINE > [localhost-startStop-1] > org.apache.catalina.core.StandardContext.filterStart Starting filters > > logs/localhost.2015-07-10.log:10-Jul-2015 11:20:55.029 FINE > [localhost-startStop-1] > org.apache.catalina.core.StandardContext.filterStart Starting filter > 'Tomcat WebSocket (JSR356) Filter' > > The part not fully understood is why do the following two lines appear in > the Catalina logs when using the Tomcat Manager to manually deploy? > > Deploying web application directory /opt/tomcat/webapps/ROOT > Deploying web application directory /opt/tomcat/webapps/host-manager > > > > > > From: Konstantin Kolinko <knst.koli...@gmail.com> > To: Tomcat Users List <users@tomcat.apache.org>, > Date: 12/07/2015 14:46 > Subject: Re: Tomcat 8 - Manager Deploy > > > > 2015-07-10 14:21 GMT+03:00 <theo.swe...@avios.com>: > > Hello - currently I'm running a multi instance Tomcat 8 server and wish > to > > use Manager to deploy war files via its HTTP API command line interface. > > > > When attempting to deploy there is a continuous issue with the context > > path not being recognised. > > > > Here is an example of the command - > > > > curl -v -X PUT > > > http://user:password@localhost :10080/manager/text/deploy?path=/address-information-ds-1.0&war=file:/usr/share/tomcat/deployments/20150706/address-information-ds-1.0 > > > FAIL - Deployed application at context path /address-information-ds-1.0 > > but context failed to start > > > So your deployment (upload) was successful, but the application > itself is broken and failed to start. > > > Now check the list of installed webapps - > > > > $ curl -X GET http://tcsct:cbiw2PXB@localhost:10080/manager/text/list > > OK - Listed applications for virtual host localhost > > /manager:running:0:manager > > /:running:0:ROOT > > /address-information-ds-1.0:stopped:0:address-information-ds-1.0.war > > /host-manager:running:0:host-manager > > Deployed, but not running. It is consistent with the above "failed to > start" message. > > > Catanlina.log > > 10-Jul-2015 11:20:54.572 SEVERE [localhost-startStop-1] > > org.apache.catalina.startup.HostConfig.deployWAR Error deploying web > > application archive /opt/tomcat/webapps/address-information-ds-1.0.war > > java.lang.IllegalStateException: ContainerBase.addChild: start: > > org.apache.catalina.LifecycleException: Failed to start component > > > [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/address-information-ds-1.0]] > > Web application errors (logged via ServletContext.log() API or > similar) go into different log file: localhost.$date.log. You should > look there. > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > > ----------------------------------------------------------------------------------------------------------------------------------------- > The Mileage Company Limited is a limited company registered in England under company number 2260073 whose registered office address is at > Astral Towers, Betts Way, London Road, Crawley, West Sussex, RH10 9XY. > > This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they > are addressed. If you have received this email in error please notify the system manager. > > This footnote also confirms that this email message has been swept by Mimecast for the presence of computer viruses. > ----------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------- The Mileage Company Limited is a limited company registered in England under company number 2260073 whose registered office address is at Astral Towers, Betts Way, London Road, Crawley, West Sussex, RH10 9XY. This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager. This footnote also confirms that this email message has been swept by Mimecast for the presence of computer viruses. -----------------------------------------------------------------------------------------------------------------------------------------