Hello,  

  With ODE 1.3.3, it seems that multiple consecutive invocations to a same 
component service will incur the following exception:

ERROR - GeronimoLog.error(108) | Error sending message to Axis2 for ODE mex 
{PartnerRoleMex#hqejbhcnphr4i3dscxlf10 [PID 
{http://scqr.bupt.edu.cn/solution}process_SyntheticBookService_sol2-12] calling 
null.operation1(...)}
org.apache.axis2.AxisFault: Two services cannot have same name.  A service with 
the 
axis_service_for_{http://example.org/writerInfo}writerInfoService#writerInfoPort_hqejbhcnphr4i3dscxlf0r
 name already exists in the system.
        at 
org.apache.axis2.client.ServiceClient.configureServiceClient(ServiceClient.java:172)
        at org.apache.axis2.client.ServiceClient.<init>(ServiceClient.java:139)
        at 
org.apache.ode.axis2.SoapExternalService.getServiceClient(SoapExternalService.java:281)
        at 
org.apache.ode.axis2.SoapExternalService.invoke(SoapExternalService.java:140)
        at 
org.apache.ode.axis2.MessageExchangeContextImpl.invokePartner(MessageExchangeContextImpl.java:52)
        at 
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.invoke(BpelRuntimeContextImpl.java:781)
        at org.apache.ode.bpel.runtime.INVOKE.run(INVOKE.java:100)
        at sun.reflect.GeneratedMethodAccessor58.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at 
org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:451)
        at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:139)
        at 
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(BpelRuntimeContextImpl.java:875)
        at 
org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:438)
        at 
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:439)
        at 
org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:441)
        at 
org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:411)
        at 
org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:405)
        at 
org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:218)
        at 
org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:404)
        at 
org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:401)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
        at java.util.concurrent.FutureTask.run(FutureTask.java:123)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)


But the same actions doesn't incur any exception in with 1.3.2 or 2.0. So I 
think this maybe is a bug, isn't it? 

And I noted that a similar problem has been discussed in 2007( 
https://issues.apache.org/jira/browse/AXIS2-1182?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12476874
 ). 

The attached is almost all the needed to replay the exception - the process, 2 
component services(running in Axis2), and the SOAP request message of the 
process.  There is another coponent service which is omitted for space reason. 
But in most cases, the previous exception will occur before it is invoked.


Best Regards,
Wenfeng

= = = = = = = = = = = = = = = = = = = =
ZHAO Wenfeng (赵文峰)
Ph.D. Candidate
http://www.bupt.edu.cn

Reply via email to