Hi
<partnerLinks>
<partnerLink name="criminalRegisterPartnerLink"
partnerLinkType="cr:CriminalRegisterPartnerLinkType"
myRole="Provider" />
<partnerLink name="federalCriminalRegisterPartnerLink"
partnerLinkType="cr:FederalCriminalRegisterPartnerLinkType"
partnerRole="FederalRegisterService"
initializePartnerRole="yes" />
Unfortunately there is no myRole attribute...
...I'll add one and try it again.
Thank's
Regards, Matthias
-----Ursprüngliche Nachricht-----
Von: Alex Boisvert [mailto:[EMAIL PROTECTED]
Gesendet: Freitag, 10. November 2006 19:02
An: [email protected]
Betreff: Re: AW: Creating a deploy.xml file for a BPEL process for ServiceMix
Can you check if you partnerLink declaration has a myRole attribute?
alex
von Arx, Matthias wrote:
> Hi Alex,
>
> Thank you for the answer.
> This was the ServiceMix 3.0 M2 release. I've installed the latest release
> now. But there is still a problem:
> After invoking the partnerlink the FederalCriminalRegisterService could not
> find a valid link for sending back the response:
>
>
> 17:54:05,121 | DEBUG | pool-2-thread-1 | ExecutionQueueImpl |
> mpl$ExecutionQueueOutputStream 682 | ReplacmentMap:
> getReplacement(OPartnerLink#35) = [EMAIL PROTECTED]
> 17:54:05,121 | DEBUG | pool-2-thread-1 | OdeService |
> org.apache.ode.jbi.OdeService 235 | ODE MEX {MyRoleMex#98304 [Client
> ID:chav548c-3058-1163091130805-8:0] calling
> {http://husky.siemens.com/xml/ns/services/criminalregister}CriminalRegisterService.getCriminalRecords(...)}
> completed ASYNCHRONOUSLY.
> 17:54:05,121 | DEBUG | pool-2-thread-1 | OdeService |
> org.apache.ode.jbi.OdeService 249 | Commiting ODE MEX {MyRoleMex#98304
> [Client ID:chav548c-3058-1163091130805-8:0] calling
> {http://husky.siemens.com/xml/ns/services/criminalregister}CriminalRegisterService.getCriminalRecords(...)}
> 17:54:06,834 | DEBUG | Finalizer | BpelC |
> apache.ode.bpel.compiler.BpelC 159 | Sett output to stream null
> 17:54:06,834 | DEBUG | Finalizer | BpelC |
> apache.ode.bpel.compiler.BpelC 159 | Sett output to stream null
> 17:54:06,844 | ERROR | pool-2-thread-2 | OdeConsumer |
> org.apache.ode.jbi.OdeConsumer 214 | error delivering RESPONSE:
> java.lang.IllegalStateException: Unknown partner link OPartnerLink#34
> at
> org.apache.ode.bpel.engine.BpelProcess.getInitialMyRoleEPR(BpelProcess.java:772)
> at
> org.apache.ode.bpel.engine.BpelEngineImpl.getMessageExchange(BpelEngineImpl.java:116)
> at org.apache.ode.jbi.OdeConsumer$2.call(OdeConsumer.java:184)
> at org.apache.ode.jbi.OdeConsumer$2.call(OdeConsumer.java:183)
> at
> org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl.execTransaction(QuartzSchedulerImpl.java:211)
> at org.apache.ode.jbi.OdeConsumer.outResponse(OdeConsumer.java:182)
> at
> org.apache.ode.jbi.OdeConsumer.onJbiMessageExchange(OdeConsumer.java:134)
> at
> org.apache.ode.jbi.JbiMessageExchangeEventRouter.onJbiMessageExchange(JbiMessageExchangeEventRouter.java:40)
> at org.apache.ode.jbi.Receiver$1.run(Receiver.java:190)
> at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417)
> 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)
> 17:54:06,844 | DEBUG | pool-2-thread-2 | DeliveryChannelImpl |
> .messaging.DeliveryChannelImpl 405 | Send ID:chav548c-3058-1163091130805-4:0
> in DeliveryChannel{OdeBpelEngine}
> 17:54:06,854 | DEBUG | pool-2-thread-2 | DeliveryChannelImpl |
> .messaging.DeliveryChannelImpl 344 | Sent: InOut[
>
>
> Is there another partnerlink required for sending back the response? If so,
> this would be a little strange for me, because the referenced port type of
> the invoked service/partnerlink contains the response message.
>
> <message name="getFederalCriminalRecords">
> <part name="body" element="ns2:getCriminalRecords"/>
> </message>
>
> <message name="getFederalCriminalRecordsResponse">
> <part name="body" element="ns2:getCriminalRecordsResponse"/>
> </message>
>
> <portType name="FederalCriminalRegisterPortType">
> <operation name="getFederalCriminalRecords">
> <input message="tns:getFederalCriminalRecords"/>
> <output message="tns:getFederalCriminalRecordsResponse"/>
> </operation>
> </portType>
>
> <plnk:partnerLinkType name="FederalCriminalRegisterPartnerLinkType">
> <plnk:role name="FederalRegisterService"
> portType="tns:FederalCriminalRegisterPortType"/>
> </plnk:partnerLinkType>
>
> Regards, Matthias
>
>
>
> -----Ursprüngliche Nachricht-----
> Von: Alex Boisvert [mailto:[EMAIL PROTECTED]
> Gesendet: Donnerstag, 9. November 2006 18:17
> An: [email protected]
> Betreff: Re: Creating a deploy.xml file for a BPEL process for ServiceMix
>
> Hi Matthias,
>
> Which version of ServiceMix are you using? ServiceMix v3.0.1 (or later)
> is required for the integration to work.
>
> See http://issues.apache.org/activemq/browse/SM-581
>
> alex
>
>
>
> von Arx, Matthias wrote:
>
>> Hi,
>>
>> We are using the ODE JBI service engine installed on ServiceMix. My
>> problem is now, how to address other services deployed in ServiceMix,
>> e.g. a JSR181 compliant service.
>>
>> I guess, for that reason the attribute initializePartnerRole="yes" has
>> to be set on each partner link declaration and a corresponding partner
>> link declaration is required in the deploy.xml descriptor (like in the
>> ping-pong example).
>>
>> With the following deploy.xml
>>
>> <process name="pns:CriminalRegisterProcess">
>> <active>true</active>
>> <provide partnerLink="criminalRegisterPartnerLink">
>> <service name="sns:CriminalRegisterService"
>> port="CriminalRegisterPort"/>
>> </provide>
>> <invoke partnerLink="federalCriminalRegisterPartnerLink">
>> <service name="fcr:FederalCriminalRegisterService"
>> port="JbiEndpoint"/>
>> </invoke>
>> </process>
>>
>>
>
>