You were absolutely right, there was some missing code for calling
destroy method for service deployed in request scope. I have fixed it in
the trunk, you will get the fix in nightly builds.

Deepal
> Hi,
>
> I am running a simple WebService with Axis 1.5.4, who send a String msg.
>
> My Axis2.xml :
>
> <service name="SimpleTest" >
>     <Description>
>         Please Type your service description here
>     </Description>
>     <messageReceivers>
>         <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only";
> class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
>         <messageReceiver  mep="http://www.w3.org/2004/08/wsdl/in-out"; 
> class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
>     </messageReceivers>
>     <parameter name="ServiceClass" locked="false"
> *scope="request"*>SimpleTest</parameter>
> </service>
>
> I have implemented lifeCycle init and destroy method :
>
> *import org.apache.axis2.AxisFault;
> import org.apache.axis2.context.ServiceContext;
> import org.apache.axis2.service.Lifecycle;
>
>
> public class SimpleTest implements Lifecycle{
>
>     public void destroy(ServiceContext arg0) {
>         System.out.println("destroy call");
>     }
>    
>     public String ping(){
>         return "bouh";
>     }
>
>     public void init(ServiceContext arg0) throws AxisFault {
>         System.out.println("init call");
>        
>     }
>
> }
>
> *Then, i have call my WS by web browser
> (http://localhost:8080/timeOut/services/SimpleTest/ping), and with a
> small client using auto generated stub :
>
> *SimpleTestStub stb = new SimpleTestStub();
> ServiceClient sc =    stb._getServiceClient();
> sc.getOptions().setManageSession(true);
> stb._setServiceClient(sc);
>  System.out.println(stb.ping().get_return());*
>
> By reading api documentation, i think i should see an init call and a
> destroy call between each request, but in fact, i can only see (for
> each request) an init call.
>
> What am i doing wrong?
>
> Thx for help,
>
> Tony.
>

Reply via email to