service name clash for callback operation
-----------------------------------------

                 Key: AXIS2-1182
                 URL: http://issues.apache.org/jira/browse/AXIS2-1182
             Project: Apache Axis 2.0 (Axis2)
          Issue Type: Bug
          Components: client-api
         Environment: java 1.5, windows sp2 (and mac os 10.4.7)
            Reporter: Michele Mazzucco


After running a stateful web service for some time (~ 4 hours and 3000 
requests) I got some exceptions like this: 

Unable to send the response to 
[http://10.8.150.50:6060/axis2/services/annonService16226000/annonOutInOp]: 
org.apache.axis2.AxisFault: Two services can not have same name, a service with 
annonService29404790 already exists in the system
        at 
org.apache.axis2.engine.AxisConfiguration.addServiceGroup(AxisConfiguration.java:244)
        at 
org.apache.axis2.engine.AxisConfiguration.addService(AxisConfiguration.java:196)
        at 
org.apache.axis2.client.ServiceClient.configureServiceClient(ServiceClient.java:109)
        at org.apache.axis2.client.ServiceClient.<init>(ServiceClient.java:95)
        at org.apache.axis2.client.ServiceClient.<init>(ServiceClient.java:187)
        at 
ncl.qosp.controller.RoutingService.sendResultToClient(RoutingService.java:595)
        at ncl.qosp.controller.RoutingService.result(RoutingService.java:518)
        at sun.reflect.GeneratedMethodAccessor49.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at 
org.apache.axis2.receivers.RawXMLINOutMessageReceiver.invokeBusinessLogic(RawXMLINOutMessageReceiver.java:99)
        at 
org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.receive(AbstractInOutSyncMessageReceiver.java:39)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:508)
        at 
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:283)
        at 
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:145)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
        at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
        at 
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:667)
        at 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
        at 
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
        at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
        at java.lang.Thread.run(Thread.java:595) 


I think here there are 2 problems:
1 - the client generated the same random value (annonService16226000): the used 
service client is always the same
2 - the service does not delete this "service" (which is actually used *only* 
to send an asynchronous result). 

I guess the problem 1 could be resolved using a counter of type long (say 
initialized with the current timestamp), that is at the first invocation you 
get annonService<init_timestamp>, second invocation (I'm assuming the same 
ServiceClient is used) is annonService<init_timestamp + 1>, ecc.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to