You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Jaime Fernández <jj...@gmail.com> on 2006/03/17 13:35:01 UTC

servicemix.xml and servicemix-http

I'd like to route a SOAP request, depending on the value of one SOAP field,
to one external web service or to another one:

 SOAP request --> content routing --> XSL transformation --> external
webservice 1
                                                   --> XSL transformation
--> external webservice 2

So I want to offer all of this as a web service offered by ServiceMix.

I want to use servicemix-http in order to invoke the external web service.
I've looked at soap-binding example but my example is a bit different
because this service is not really implemented by any class (it's external).
I know how to coordinate routing and transformations tasks with the "
servicemix.xml" file. But servicemix-http requires xbean.xml. Is there any
way to integrate or reference this xbean.xml in the servicemix.xml?. Because
servicemix.xml in soap-binding example is almost empty and there's no
activationSpec.
Is there any documentation related to this kind of configuration?.
Thanks.

Re: servicemix.xml and servicemix-http

Posted by Jaime Fernández <jj...@gmail.com>.
Thanks again, Guillaume.
I think that XSL transformation component should have the in-out mep,
because the same XSL page may be used for the transformation of the message
in both directions. Don't you think the same?. And so, the routing via XSL
would be corrected too.

On 3/21/06, Guillaume Nodet <gn...@gmail.com> wrote:
>
> This is known limitation http://jira.activemq.org/jira/browse/SM-300.
> There is no simple way to do that for the moment and
> you will have to write your own router... :(
>
> Cheers,
> Guillaume Nodet
>
> On 3/21/06, Jaime Fernández <jj...@gmail.com> wrote:
> > Thank you very much, Guillaume.
> > Now it works. But if I add routing by content (xpath router), then it
> fails.
> > I think it is by the same reason. The problem is that I cannot include
> the
> > router in the ChainedComponent with the other services because it's the
> > router which decides what's the next service.
> > Which approach should I take?.
> >
> >
> > On 3/21/06, Guillaume Nodet <gn...@gmail.com> wrote:
> > >
> > > The xslt transformation component can not be used between two
> > > components for an in-out MEP.  In such a case, you would need to use
> > > the ChainedComponent and use the xslt transformation and the target
> > > endpoint in the service lists.
> > > Then, you could also add another xslt to transform the output.
> > > Take a look at
> > >
> http://svn.apache.org/viewcvs.cgi/incubator/servicemix/trunk/servicemix-core/src/test/resources/org/apache/servicemix/components/util/chained-router.xml?rev=387210&view=markup
> > >
> > > Cheers,
> > > Guillaume Nodet
> > >
> > > On 3/20/06, Jaime Fernández <jj...@gmail.com> wrote:
> > > > Thanks for your reply, Guillaume.
> > > > I've attached the servicemix.xml file for doing a very simple
> example:
> > > >
> > > >   SOAP request -> XSL transformation -> Invocation of external
> > > webservice
> > > >
> > > > It works if I remove the transformation (invokes the webservice with
> the
> > > XML
> > > > received by the http binding). But when I add the XSL transformation
> (an
> > > > intermediate step) then the sample fails. It returns directly the
> XML
> > > > transformed. But my objective is to invoke the external web service
> with
> > > the
> > > > transformed XML.
> > > > I think that "destinationService" elements are correct.
> > > > What's the problem?
> > > > Thanks
> > > >
> > > >
> > > > On 3/17/06, Guillaume Nodet < gnodet@gmail.com> wrote:
> > > > > Take a look at the bottom of the following page:
> > > > >
> > > >
> http://servicemix.org/servicemix-http#servicemix-http-Lightweightmode
> > > > >
> > > > > Cheers,
> > > > > Guillaume Nodet
> > > > >
> > > > > On 3/17/06, Jaime Fernández <jj...@gmail.com> wrote:
> > > > > >
> > > > > > I'd like to route a SOAP request, depending on the value of one
> SOAP
> > > > > > field,
> > > > > > to one external web service or to another one:
> > > > > >
> > > > > > SOAP request --> content routing --> XSL transformation -->
> external
> > > > > > webservice 1
> > > > > >                                                    -->
> > > > XSL transformation
> > > > > > --> external webservice 2
> > > > > >
> > > > > > So I want to offer all of this as a web service offered by
> > > ServiceMix.
> > > > > >
> > > > > > I want to use servicemix-http in order to invoke the external
> web
> > > > service.
> > > > > > I've looked at soap-binding example but my example is a bit
> > > different
> > > > > > because this service is not really implemented by any class
> (it's
> > > > > > external).
> > > > > > I know how to coordinate routing and transformations tasks with
> the
> > > "
> > > > > > servicemix.xml" file. But servicemix-http requires xbean.xml. Is
> > > there
> > > > any
> > > > > > way to integrate or reference this xbean.xml in the
> servicemix.xml?.
> > > > > > Because
> > > > > > servicemix.xml in soap-binding example is almost empty and
> there's
> > > no
> > > > > > activationSpec.
> > > > > > Is there any documentation related to this kind of
> configuration?.
> > > > > > Thanks.
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > >
> > >
> >
> >
>

Re: servicemix.xml and servicemix-http

Posted by Guillaume Nodet <gn...@gmail.com>.
This is known limitation http://jira.activemq.org/jira/browse/SM-300.
There is no simple way to do that for the moment and
you will have to write your own router... :(

Cheers,
Guillaume Nodet

On 3/21/06, Jaime Fernández <jj...@gmail.com> wrote:
> Thank you very much, Guillaume.
> Now it works. But if I add routing by content (xpath router), then it fails.
> I think it is by the same reason. The problem is that I cannot include the
> router in the ChainedComponent with the other services because it's the
> router which decides what's the next service.
> Which approach should I take?.
>
>
> On 3/21/06, Guillaume Nodet <gn...@gmail.com> wrote:
> >
> > The xslt transformation component can not be used between two
> > components for an in-out MEP.  In such a case, you would need to use
> > the ChainedComponent and use the xslt transformation and the target
> > endpoint in the service lists.
> > Then, you could also add another xslt to transform the output.
> > Take a look at
> > http://svn.apache.org/viewcvs.cgi/incubator/servicemix/trunk/servicemix-core/src/test/resources/org/apache/servicemix/components/util/chained-router.xml?rev=387210&view=markup
> >
> > Cheers,
> > Guillaume Nodet
> >
> > On 3/20/06, Jaime Fernández <jj...@gmail.com> wrote:
> > > Thanks for your reply, Guillaume.
> > > I've attached the servicemix.xml file for doing a very simple example:
> > >
> > >   SOAP request -> XSL transformation -> Invocation of external
> > webservice
> > >
> > > It works if I remove the transformation (invokes the webservice with the
> > XML
> > > received by the http binding). But when I add the XSL transformation (an
> > > intermediate step) then the sample fails. It returns directly the XML
> > > transformed. But my objective is to invoke the external web service with
> > the
> > > transformed XML.
> > > I think that "destinationService" elements are correct.
> > > What's the problem?
> > > Thanks
> > >
> > >
> > > On 3/17/06, Guillaume Nodet < gnodet@gmail.com> wrote:
> > > > Take a look at the bottom of the following page:
> > > >
> > > http://servicemix.org/servicemix-http#servicemix-http-Lightweightmode
> > > >
> > > > Cheers,
> > > > Guillaume Nodet
> > > >
> > > > On 3/17/06, Jaime Fernández <jj...@gmail.com> wrote:
> > > > >
> > > > > I'd like to route a SOAP request, depending on the value of one SOAP
> > > > > field,
> > > > > to one external web service or to another one:
> > > > >
> > > > > SOAP request --> content routing --> XSL transformation --> external
> > > > > webservice 1
> > > > >                                                    -->
> > > XSL transformation
> > > > > --> external webservice 2
> > > > >
> > > > > So I want to offer all of this as a web service offered by
> > ServiceMix.
> > > > >
> > > > > I want to use servicemix-http in order to invoke the external web
> > > service.
> > > > > I've looked at soap-binding example but my example is a bit
> > different
> > > > > because this service is not really implemented by any class (it's
> > > > > external).
> > > > > I know how to coordinate routing and transformations tasks with the
> > "
> > > > > servicemix.xml" file. But servicemix-http requires xbean.xml. Is
> > there
> > > any
> > > > > way to integrate or reference this xbean.xml in the servicemix.xml?.
> > > > > Because
> > > > > servicemix.xml in soap-binding example is almost empty and there's
> > no
> > > > > activationSpec.
> > > > > Is there any documentation related to this kind of configuration?.
> > > > > Thanks.
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> > >
> >
>
>

Re: servicemix.xml and servicemix-http

Posted by Jaime Fernández <jj...@gmail.com>.
Thank you very much, Guillaume.
Now it works. But if I add routing by content (xpath router), then it fails.
I think it is by the same reason. The problem is that I cannot include the
router in the ChainedComponent with the other services because it's the
router which decides what's the next service.
Which approach should I take?.


On 3/21/06, Guillaume Nodet <gn...@gmail.com> wrote:
>
> The xslt transformation component can not be used between two
> components for an in-out MEP.  In such a case, you would need to use
> the ChainedComponent and use the xslt transformation and the target
> endpoint in the service lists.
> Then, you could also add another xslt to transform the output.
> Take a look at
> http://svn.apache.org/viewcvs.cgi/incubator/servicemix/trunk/servicemix-core/src/test/resources/org/apache/servicemix/components/util/chained-router.xml?rev=387210&view=markup
>
> Cheers,
> Guillaume Nodet
>
> On 3/20/06, Jaime Fernández <jj...@gmail.com> wrote:
> > Thanks for your reply, Guillaume.
> > I've attached the servicemix.xml file for doing a very simple example:
> >
> >   SOAP request -> XSL transformation -> Invocation of external
> webservice
> >
> > It works if I remove the transformation (invokes the webservice with the
> XML
> > received by the http binding). But when I add the XSL transformation (an
> > intermediate step) then the sample fails. It returns directly the XML
> > transformed. But my objective is to invoke the external web service with
> the
> > transformed XML.
> > I think that "destinationService" elements are correct.
> > What's the problem?
> > Thanks
> >
> >
> > On 3/17/06, Guillaume Nodet < gnodet@gmail.com> wrote:
> > > Take a look at the bottom of the following page:
> > >
> > http://servicemix.org/servicemix-http#servicemix-http-Lightweightmode
> > >
> > > Cheers,
> > > Guillaume Nodet
> > >
> > > On 3/17/06, Jaime Fernández <jj...@gmail.com> wrote:
> > > >
> > > > I'd like to route a SOAP request, depending on the value of one SOAP
> > > > field,
> > > > to one external web service or to another one:
> > > >
> > > > SOAP request --> content routing --> XSL transformation --> external
> > > > webservice 1
> > > >                                                    -->
> > XSL transformation
> > > > --> external webservice 2
> > > >
> > > > So I want to offer all of this as a web service offered by
> ServiceMix.
> > > >
> > > > I want to use servicemix-http in order to invoke the external web
> > service.
> > > > I've looked at soap-binding example but my example is a bit
> different
> > > > because this service is not really implemented by any class (it's
> > > > external).
> > > > I know how to coordinate routing and transformations tasks with the
> "
> > > > servicemix.xml" file. But servicemix-http requires xbean.xml. Is
> there
> > any
> > > > way to integrate or reference this xbean.xml in the servicemix.xml?.
> > > > Because
> > > > servicemix.xml in soap-binding example is almost empty and there's
> no
> > > > activationSpec.
> > > > Is there any documentation related to this kind of configuration?.
> > > > Thanks.
> > > >
> > > >
> > >
> > >
> >
> >
> >
>

Re: servicemix.xml and servicemix-http

Posted by Guillaume Nodet <gn...@gmail.com>.
The xslt transformation component can not be used between two
components for an in-out MEP.  In such a case, you would need to use
the ChainedComponent and use the xslt transformation and the target
endpoint in the service lists.
Then, you could also add another xslt to transform the output.
Take a look at http://svn.apache.org/viewcvs.cgi/incubator/servicemix/trunk/servicemix-core/src/test/resources/org/apache/servicemix/components/util/chained-router.xml?rev=387210&view=markup

Cheers,
Guillaume Nodet

On 3/20/06, Jaime Fernández <jj...@gmail.com> wrote:
> Thanks for your reply, Guillaume.
> I've attached the servicemix.xml file for doing a very simple example:
>
>   SOAP request -> XSL transformation -> Invocation of external webservice
>
> It works if I remove the transformation (invokes the webservice with the XML
> received by the http binding). But when I add the XSL transformation (an
> intermediate step) then the sample fails. It returns directly the XML
> transformed. But my objective is to invoke the external web service with the
> transformed XML.
> I think that "destinationService" elements are correct.
> What's the problem?
> Thanks
>
>
> On 3/17/06, Guillaume Nodet < gnodet@gmail.com> wrote:
> > Take a look at the bottom of the following page:
> >
> http://servicemix.org/servicemix-http#servicemix-http-Lightweightmode
> >
> > Cheers,
> > Guillaume Nodet
> >
> > On 3/17/06, Jaime Fernández <jj...@gmail.com> wrote:
> > >
> > > I'd like to route a SOAP request, depending on the value of one SOAP
> > > field,
> > > to one external web service or to another one:
> > >
> > > SOAP request --> content routing --> XSL transformation --> external
> > > webservice 1
> > >                                                    -->
> XSL transformation
> > > --> external webservice 2
> > >
> > > So I want to offer all of this as a web service offered by ServiceMix.
> > >
> > > I want to use servicemix-http in order to invoke the external web
> service.
> > > I've looked at soap-binding example but my example is a bit different
> > > because this service is not really implemented by any class (it's
> > > external).
> > > I know how to coordinate routing and transformations tasks with the "
> > > servicemix.xml" file. But servicemix-http requires xbean.xml. Is there
> any
> > > way to integrate or reference this xbean.xml in the servicemix.xml?.
> > > Because
> > > servicemix.xml in soap-binding example is almost empty and there's no
> > > activationSpec.
> > > Is there any documentation related to this kind of configuration?.
> > > Thanks.
> > >
> > >
> >
> >
>
>
>

Re: servicemix.xml and servicemix-http

Posted by Jaime Fernández <jj...@gmail.com>.
Thanks for your reply, Guillaume.
I've attached the servicemix.xml file for doing a very simple example:

  SOAP request -> XSL transformation -> Invocation of external webservice

It works if I remove the transformation (invokes the webservice with the XML
received by the http binding). But when I add the XSL transformation (an
intermediate step) then the sample fails. It returns directly the XML
transformed. But my objective is to invoke the external web service with the
transformed XML.
I think that "destinationService" elements are correct.
What's the problem?
Thanks

On 3/17/06, Guillaume Nodet <gn...@gmail.com> wrote:
>
> Take a look at the bottom of the following page:
> http://servicemix.org/servicemix-http#servicemix-http-Lightweightmode
>
> Cheers,
> Guillaume Nodet
>
> On 3/17/06, Jaime Fern�ndez <jj...@gmail.com> wrote:
> >
> > I'd like to route a SOAP request, depending on the value of one SOAP
> > field,
> > to one external web service or to another one:
> >
> > SOAP request --> content routing --> XSL transformation --> external
> > webservice 1
> >                                                    --> XSL
> transformation
> > --> external webservice 2
> >
> > So I want to offer all of this as a web service offered by ServiceMix.
> >
> > I want to use servicemix-http in order to invoke the external web
> service.
> > I've looked at soap-binding example but my example is a bit different
> > because this service is not really implemented by any class (it's
> > external).
> > I know how to coordinate routing and transformations tasks with the "
> > servicemix.xml" file. But servicemix-http requires xbean.xml. Is there
> any
> > way to integrate or reference this xbean.xml in the servicemix.xml?.
> > Because
> > servicemix.xml in soap-binding example is almost empty and there's no
> > activationSpec.
> > Is there any documentation related to this kind of configuration?.
> > Thanks.
> >
> >
>
>

Re: servicemix.xml and servicemix-http

Posted by Guillaume Nodet <gn...@gmail.com>.
Take a look at the bottom of the following page:
http://servicemix.org/servicemix-http#servicemix-http-Lightweightmode

Cheers,
Guillaume Nodet

On 3/17/06, Jaime Fernández <jj...@gmail.com> wrote:
>
> I'd like to route a SOAP request, depending on the value of one SOAP
> field,
> to one external web service or to another one:
>
> SOAP request --> content routing --> XSL transformation --> external
> webservice 1
>                                                    --> XSL transformation
> --> external webservice 2
>
> So I want to offer all of this as a web service offered by ServiceMix.
>
> I want to use servicemix-http in order to invoke the external web service.
> I've looked at soap-binding example but my example is a bit different
> because this service is not really implemented by any class (it's
> external).
> I know how to coordinate routing and transformations tasks with the "
> servicemix.xml" file. But servicemix-http requires xbean.xml. Is there any
> way to integrate or reference this xbean.xml in the servicemix.xml?.
> Because
> servicemix.xml in soap-binding example is almost empty and there's no
> activationSpec.
> Is there any documentation related to this kind of configuration?.
> Thanks.
>
>