skramki
skramki

Reputation: 11

need to know steps to do hot deployment in Tomcat 6.X

I want to deploy the files (class files) without stopping the tomcat services. problem for me is as follows I have one project with different domain names. which are running in one tomcat server. but if I deploy a class i need to stop tomcat each time this will effect for other domains. So please suggest a solution to this problem.


Hi Romani,

Thanks for your reply

I'm using Tomcat manager to Stop the multiple application

I need,

1) Example "myapp" is application in tomcat

 C:\tomcat6.0\webapps\myapp\

2) I'm now deploying class files in "myapp" but not stopping "myapp" tomcat service

 C:\tomcat6.0\webapps\myapp\WEB-INF\classes\**test.clas**s

3) Now "test.class" file has replaced in myapp

4) I'm opening http://localhost:8080/myapp

5) I need the changes of test.class file with no downtime of myapp application

     Is there any possibilities that deploying class files "without stop" "myapp" "Tomcat service"  in the Tomcat manager to reflect class file

     No down time with the application

Upvotes: 1

Views: 2215

Answers (2)

Gurnard
Gurnard

Reputation: 1775

I don't know if you found the solution but I had the same issue and maybe this will help others. This is only recommended for development environments. If you edit your context.xml file (for me that is located in [tomcat-root]/conf and add an attribute to the Context element: reloadable="true" like this:

<Context reloadable="true">

Then restart the server. You now have hot deployment on classes and libs as described here (without the need for manually restarting the application)

http://tomcat.apache.org/tomcat-6.0-doc/config/context.html#Common_Attributes

Hope this helps you or someone else.

Upvotes: 1

Romani
Romani

Reputation: 3241

Try out following solution. this way you will stop and start only your application.

Do u have access to 'Tomcat web application manager'?

1) Go to http://localhost:8080

2) click on Tomcat manager

3) Then stop your deployed application

4) Then replace the class file/s in tomcat deployment directory

for e.g. C:\tomcat6.0\webapps\yourapp\WEB-INF\classes\....

5) Then again come back to tomcat manager and start your application.

Upvotes: 0

Related Questions