Did this actually work for you. I am thinking of using correlation sets in my
project. Please let me know if this is supported in servicemix. Thanks much


Alex Boisvert wrote:
> 
> 
> What I had in mind is:
> 
> 1) process sends a message and initiates a correlation set during the 
> invoke (e.g. taskId = 'xxx')
> 2) worklist service processes the message and returns output message 
> with same taskId in the body.
> 3) process receives message and correlates against the taskId property.
> 
> This correlation pattern is called "request-response" in BPEL 2.0 and 
> "out-in" in BPEL 1.1, and should work with two one-way messages or a 
> single request-response operation.
> 
> So you get roughly this BPEL activity (assuming you're doing a single 
> operation):
> 
> <invoke operation="createTask"
>     inputVariable="createTaskRequest"
>     outputVariable="createTaskResponse"
>     partnerLink="WorklistPartnerLink"
>     portType="wl:WorklistPortType">
>     <correlations>
>         <correlation set="taskId" initiate="yes" 
> pattern="request-response"/>
>     </correlations>
> </invoke>
> 
> If you don't use correlation sets and you're doing an asynchronous 
> operation, you're relying on an underlying protocol (e.g., 
> WS-Addressing) and the fact that the service understands this protocol.
> 
> alex
> 
> 
> Guillaume Nodet wrote:
>> You mean using a synchronous BPEL process to correlate the request and 
>> the
>> response of the main asyncrhonous BPEL process ?
>> That's also a good solution.
>> Still, there is the need to support wsa:replyTo somewhere ...
>>
>> Cheers,
>> Guillaume Nodet
>>
>> On 6/14/06, Alex Boisvert <[EMAIL PROTECTED]> wrote:
>>>
>>>
>>> Also, by far the most portable and easiest way would be to use a BPEL
>>> correlation set and define correlation properties to be extracted from
>>> the message body.
>>>
>>> This should work on ServiceMix today as it does not require any
>>> infrastructure support from the message bus.
>>>
>>> alex
>>>
>>>
>>> Guillaume Nodet wrote:
>>> > Let me check i have understood: your bpel process is asynchronous, it
>>> > means
>>> > that it will answer to the request by sending another http request,
>>> > right ?
>>> >
>>> > I would see several solutions:
>>> >  * use a synchronous bpel process, and let the servicemix-http handle
>>> the
>>> > wsa:replyTo header (unfortunately, this is not supported yet, please
>>> > raise a
>>> > jira)
>>> >  * keep the bpel process asynchronous, but register an http binding
>>> > for the
>>> > response
>>> >  * mix both (async bpel process + replyTo) and use a component to
>>> > correlate
>>> > the request to the bpel process and its response (it should be a
>>> > servicemix-eip pattern, the opposite of the pipeline)
>>> >  * use URIs (http://servicemix.goopen.org/site/uris.html)
>>> >
>>> > So in short, this is not currently possible as is.  The easiest way
>>> > would be
>>> > to change your process to be synchronous and implement a small
>>> > component in
>>> > front that would make the bridge and use URI support to send the
>>> > response.
>>> > If your process is asynchronous, how do you plan to correlate the
>>> request
>>> > and the response ?
>>> >
>>> > Cheers,
>>> > Guillaume Nodet
>>> >
>>> >
>>> > On 6/14/06, oho <[EMAIL PROTECTED]> wrote:
>>> >>
>>> >>
>>> >> Hello
>>> >>
>>> >> I use PXE on Servicemix-3.0-Snapshot from 2006-04-26 on Tomcat 
>>> 5.5.16.
>>> >>
>>> >> On BPEL-Process I call via jbiBridge a webservice called
>>> >> worklistService.
>>> >> This call is asynchron.
>>> >> For callback BPEL-Process from worklistService i need to use
>>> >> WS-Adressing
>>> >> information from webservice-header. This information are not
>>> >> supplied. Are
>>> >> there any options to configure servicemix for supporting 
>>> WS-Addressing.
>>> >>
>>> >> My service-definitions in applicationContext.xml:
>>> >>
>>> >> <?xml version=" 1.0" encoding="UTF-8"?>
>>> >> <beans  xmlns="http://xbean.org/schemas/spring/1.0";
>>> >>                 xmlns:sm=" http://servicemix.apache.org/config/1.0";
>>> >>                 xmlns:http="http://servicemix.apache.org/http/1.0";
>>> >>                 xmlns:process="
>>> >> http://bpel.nesko.fin.be.ch/statemachine/process/Form";
>>> >>
>>> >> xmlns:startprozess="
>>> http://ws.nesko.fin.be.ch/statemachine/process/startProzess
>>> >>
>>> >> "
>>> >>
>>> >> xmlns:wl="http://ws.statemachine.nesko.fin.be.ch/worklist";
>>> >>                 >
>>> >>
>>> >>         <!-- the JBI container -->
>>> >>         <sm:container   id="jbi"
>>> >>                                 rootDir="#rootDir"
>>> >>                                 useMBeanServer="true"
>>> >>                                         createMBeanServer="true"
>>> >>                                 installationDirPath="#installDir"
>>> >>                                 deploymentDirPath="#deployDir"
>>> >>
>>> >>
>>> >> monitorInstallationDirectory="true"
>>> >>                                 dumpStats="true"
>>> >>                                         statsInterval="10"
>>> >>
>>> >> transactionManager="#transactionManager">
>>> >>
>>> >>     <sm:activationSpecs>
>>> >>         <!-- START SNIPPET: HTTP-Endpoint -->
>>> >>         <sm:activationSpec componentName="httpEndpoints">
>>> >>                 <sm:component>
>>> >>                         <http:component>
>>> >>                                 <http:endpoints>
>>> >>
>>> >>                                         <http:endpoint
>>> >> service="process:FormErfassenStandardProcessService"
>>> >>
>>> >>
>>> >> endpoint="FromErfassenStandardProcessPort"
>>> >>
>>> >> role="consumer"
>>> >>
>>> >>
>>> >> locationURI="
>>> >>
>>> http://localhost:8192/statemachine/process/FormErfassenStandardProcessService
>>>  
>>>
>>> >>
>>> >> "
>>> >>
>>> defaultMep="
>>> >> http://www.w3.org/2004/08/wsdl/in-out";
>>> >>                                                         
>>> soap="true" />
>>> >>                                     </http:endpoints>
>>> >>                                 </http:component>
>>> >>                         </sm:component>
>>> >>                 </sm:activationSpec>
>>> >>                 <!-- END SNIPPET: HTTP-Endpoint -->
>>> >>         <!-- START SNIPPET: Worklist Soap Endpoint Definition -->
>>> >>         <sm:activationSpec componentName="worklistSoap"
>>> >>
>>> >> service="wl:CreateTaskService"
>>> >>
>>> >> endpoint="CreateTaskService"
>>> >>                                                    >
>>> >>                         <sm:component>
>>> >>                                 <bean class="
>>> >> org.apache.servicemix.components.saaj.SaajBinding">
>>> >>                                         <property 
>>> name="soapEndpoint">
>>> >>                                                 <bean class="
>>> >> javax.xml.messaging.URLEndpoint">
>>> >>
>>> <constructor-arg
>>> >> value="http://localhost:8889/statemachine/services/WorklistService"/>
>>> >>                                         </bean>
>>> >>                                 </property>
>>> >>                         </bean>
>>> >>                         </sm:component>
>>> >>                 </sm:activationSpec>
>>> >>                 <!-- END SNIPPET: Worklist Soap Endpoint 
>>> Definition -->
>>> >>     </sm:activationSpecs>
>>> >>   </sm:container>
>>> >>
>>> >>   <!-- Transaction Manager -->
>>> >>   <bean id="transactionContextManager"
>>> >> class="org.jencks.factory.TransactionContextManagerFactoryBean "/>
>>> >>   <bean id="transactionManager"
>>> >> class="org.jencks.factory.GeronimoTransactionManagerFactoryBean" />
>>> >>
>>> >>   <!-- Directories relative to web app -->
>>> >>   <bean id="servletContext"
>>> >> class="
>>> org.springframework.web.context.support.ServletContextFactoryBean"
>>> >>
>>> >> />
>>> >>   <bean id="rootDir" class="org.springframework.web.util.WebUtils"
>>> >> factory-method="getRealPath">
>>> >>     <constructor-arg ref="servletContext" />
>>> >>     <constructor-arg value="/wdir" />
>>> >>   </bean>
>>> >>   <bean id="installDir" 
>>> class="org.springframework.web.util.WebUtils "
>>> >> factory-method="getRealPath">
>>> >>     <constructor-arg ref="servletContext" />
>>> >>     <constructor-arg value="/install" />
>>> >>   </bean>
>>> >>   <bean id="deployDir" class=" org.springframework.web.util.WebUtils"
>>> >> factory-method="getRealPath">
>>> >>     <constructor-arg ref="servletContext" />
>>> >>     <constructor-arg value="/deploy" />
>>> >>   </bean>
>>> >> </beans>
>>> >>
>>> >>
>>> >> Thanks for your help.
>>> >> Oliver
>>> >> --
>>> >> View this message in context:
>>> >>
>>> http://www.nabble.com/WS-Addressing-from-pxe-over-JBI-t1785537.html#a4863047
>>>  
>>>
>>> >>
>>> >>
>>> >> Sent from the ServiceMix - User forum at Nabble.com.
>>> >>
>>> >>
>>> >
>>>
>>>
>>
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/WS-Addressing-from-pxe-over-JBI-tf1785537s12049.html#a9113477
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to