Hi Vivian, Yes that's correct I'm using the output of the first service as input to the second though the operation is different. I'm going from an In Only MEP (File BC) to an In-Out MEP (JSR181 SE) to an In-Only MEP (HTTP BC) so I was using the Pipeline EIP and I would assume I'm automatically getting asynchronous messaging because I'm using SEDA flows; is that not safe to assume? The main issue is the operation of the first service (in JSR181 SE) is being determined by the first element <Save> in the xml body <Save><Document/></Save> and it returns the <Document> element wrapped with a <SaveResponse> element. The Pipeline EIP currently is sending this <SaveResponse> wrapped <Document> to the next service but that service's operation is not <SaveResponse> and in fact it doesn't use a wrapped document to determine the operation, it requires a SOAP Action (it's an external call through ServiceMix-HTTP) therefore it just requires the xml body to be <Document>. So the question is does the EIP SE handle automatic wrapping/unwrapping documents based on the operation setting in the <exchange-target>? If not, is there another method I can use to configure this on a per <exchange-target> basis?
Respectfully, Brian Madesclair Vivian wrote: > > Hello Brian, > > If my understanding of your problem is right, you are using the output of > your first service as the input of your second service (this is a routing > slip right?). But your second service would require the same input. I > think you should use a Recipient List EIP, or a WireTap EIP for your use > case. To this end, you might have to consider using asynchronous > messaging, which can be done with the AsyncBridge smx EIP. > > Regards, > Vivian > > > -----Message d'origine----- > De : ObjectOrange [mailto:[email protected]] > Envoyé : lundi 27 juillet 2009 21:22 > À : [email protected] > Objet : Wrapped Document Services Routing > > > Hi, > > I'm having difficulties understanding how ServiceMix-EIP routes an XML > document from one service to another when using wrapped documents to > determine service operations. > > For example, an XML document (<Save><Document/></Save>) is picked up by > the File BC and forwarded to an EIP Pipeline route service. That service > routes this document to a data service deployed in the JSR181 SE which is > configured as a JSR181/JAXB2 service with Save as its operation and > Document as its input parameter type. When that service persists to the > database, it returns a <SaveResponse><Document></SaveResponse>. This all > is working fine to this point and is where I'm getting stuck. The next > service is an external HTTP service (Intalio BPM) that requires a > <Document> payload and SOAP action to be set. The EIP Pipeline Routing > service is attempting to call that service with the output from the data > service call using the <SaveResponse> as an operation wrapper around it as > such: > <SaveResponse><Document></SaveResponse>. Is the EIP supposed to unwrap > this response and wrap it again with the operation required by the next > service or none if that service doesn't use wrapped documents? > > Respectively, > Brian > -- > View this message in context: > http://www.nabble.com/Wrapped-Document-Services-Routing-tp24686738p24686738.html > Sent from the ServiceMix - User mailing list archive at Nabble.com. > > > -- View this message in context: http://www.nabble.com/Wrapped-Document-Services-Routing-tp24686738p24698093.html Sent from the ServiceMix - User mailing list archive at Nabble.com.
