You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Peter Ross <pr...@missioncriticalit.com> on 2003/07/10 13:56:51 UTC

redeployment of web-service class files problem.

Hi,

I seem to be having a problem where if I redeploy a service, the
web-service still uses the old versions of the class files and returns
the old answer.  The only way I can get the new class files is to
restart Tomcat.

I'm trying to interactively develop a web-service using Axis 1.1
deployed in Tomcat 4.1.24 running on windows XP.

I deploy the web service so:
    >javac ws/IntelligentForm/*.java

    >copy ws\IntelligentForm\*.class c:\tomcat41\webapps\axis\WEB-INF\classes\ws\IntelligentForm
    ws\IntelligentForm\Forms.class
    ws\IntelligentForm\IntelligentForm.class
    ws\IntelligentForm\IntelligentFormService.class
    ws\IntelligentForm\IntelligentFormServiceLocator.class
    ws\IntelligentForm\IntelligentFormSOAPBindingImpl.class
    ws\IntelligentForm\IntelligentFormSOAPBindingStub.class
            6 file(s) copied.

    >cd ws/IntelligentForm

    >java org.apache.axis.client.AdminClient deploy.wsdd
    Processing file deploy.wsdd
    <Admin>Done processing</Admin>
    
I then develop the service some more, undeploy the service so

    >del c:\tomcat41\webapps\axis\WEB-INF\classes\ws\IntelligentForm\*.class

    >cd ws/IntelligentForm

    >java org.apache.axis.client.AdminClient undeploy.wsdd
    Processing file undeploy.wsdd
    <Admin>Done processing</Admin>

and then redeploy the service following the steps above for deploying
the service, but when I access the service I get the same result as the
old version of the code.  If I restart Tomcat then I get the new result.

Can anyone help?

Regards,
Peter

Re: redeployment of web-service class files problem.

Posted by Dan Kamins <d_...@axonchisel.net>.
You need to get Tomcat to reload the classes themselves, not just have Axis look at an updated deployment.  To do this, you can restart Tomcat.  Or, if you don't want to restart Tomcat, you can (usually) "touch" (just updates modified time of the file and makes Tomcat think something has changed) the web.xml file in the webapps/axis/WEB-INF directory.  I have this as part of my ant deployment script:

    <!-- Target: "touchapp" -->
    <target name="touchapp" 
        description="Touch app web.xml, triggering a class reload within a few seconds, without restarting tomcat"
    >
        <touch file="${tomcat.dir}/webapps/axis/WEB-INF/web.xml" />
    </target>

--
Dan Kamins

On Thu, 10 Jul 2003 13:56:51 +0200, Peter Ross wrote:
>Hi,
>
>I seem to be having a problem where if I redeploy a service, the
>web-service still uses the old versions of the class files and
>returns
>the old answer. �The only way I can get the new class files is to
>restart Tomcat.
>
>I'm trying to interactively develop a web-service using Axis 1.1
>deployed in Tomcat 4.1.24 running on windows XP.
>
>I deploy the web service so:
>>javac ws/IntelligentForm/*.java
>
>>copy ws\IntelligentForm\*.class c:\tomcat41\webapps\axis\WEB-
>>INF\classes\ws\IntelligentForm
>ws\IntelligentForm\Forms.class
>ws\IntelligentForm\IntelligentForm.class
>ws\IntelligentForm\IntelligentFormService.class
>ws\IntelligentForm\IntelligentFormServiceLocator.class
>ws\IntelligentForm\IntelligentFormSOAPBindingImpl.class
>ws\IntelligentForm\IntelligentFormSOAPBindingStub.class
>6 file(s) copied.
>
>>cd ws/IntelligentForm
>
>>java org.apache.axis.client.AdminClient deploy.wsdd
>Processing file deploy.wsdd
><Admin>Done processing</Admin>
>
>I then develop the service some more, undeploy the service so
>
>>del c:\tomcat41\webapps\axis\WEB-INF\classes\ws\IntelligentForm\*
>>.class
>
>>cd ws/IntelligentForm
>
>>java org.apache.axis.client.AdminClient undeploy.wsdd
>Processing file undeploy.wsdd
><Admin>Done processing</Admin>
>
>and then redeploy the service following the steps above for deploying
>the service, but when I access the service I get the same result as
>the
>old version of the code. �If I restart Tomcat then I get the new
>result.
>
>Can anyone help?
>
>Regards,
>Peter
>