servicemix-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Esteban Forzani" <eforz...@gmail.com>
Subject Re: Take SOAPAction from client's request
Date Tue, 08 Apr 2008 22:43:22 GMT
OK, thanks Freeman, it worked!  and how can I invoke the consumer from a
client? Which is your URL?

Thanks

Regards

Esteban

On Tue, Apr 8, 2008 at 9:43 AM, Freeman Fang <freeman.fang@gmail.com> wrote:

> Hi Esteban,
> If you deploy su into a standalone servicemix, you shouldn't configure an
> embeded jbi bus, so just try
>
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns:sm="http://servicemix.apache.org/config/1.0"
>  xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0"
>  xmlns:tempuri="http://tempuri.org/">
>          <cxfbc:consumer
>              wsdl="http://test.intranet/webservices/hello.asmx?WSDL"
>              service="tempuri:helloPF"
>              endpoint="helloPFPort"
>              targetEndpoint="helloPFPortProxy"
>              targetService="tempuri:helloPF"
>              targetInterface="tempuri:helloPFSoap">
>          </cxfbc:consumer>
>          <cxfbc:provider
>              wsdl="http://test.intranet/webservices/hello.asmx?WSDL"
>              locationURI="http://test.intranet/webservices/hello.asmx"
>              service="tempuri:helloPF"
>              endpoint="helloPFPortProxy"
>              interfaceName="tempuri:helloPFSoap">
>          </cxfbc:provider>
> </beans>
>
> Regards
> Freeman
>
>
> Freeman
>
> Esteban Forzani wrote:
>
> > Hi Freeman, my jbi.xml of the SA is:
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <jbi xmlns="http://java.sun.com/xml/ns/jbi" version="1.0">
> >  <service-assembly>
> >    <identification>
> >      <name>HelloProxy-sa</name>
> >      <description>HelloProxy :: SA (Proxy Service)</description>
> >    </identification>
> >    <service-unit>
> >      <identification>
> >        <name>HelloProxy-cxfbc-su</name>
> >        <description>Este módulo es el encargado de configurar un
> > servicio
> > proxy usando el CXF BC del ESB.</description>
> >      </identification>
> >      <target>
> >
> >  <artifacts-zip>HelloProxy-cxfbc-su-1.0-SNAPSHOT.zip</artifacts-zip>
> >        <component-name>servicemix-cxf-bc</component-name>
> >      </target>
> >    </service-unit>
> >  </service-assembly>
> > </jbi>
> >
> > This is generated by maven when run the install.
> >
> > Regards
> >
> > Esteban
> >
> >
> > On Mon, Apr 7, 2008 at 11:50 AM, Freeman Fang <freeman.fang@gmail.com>
> > wrote:
> >
> >
> >
> > > Hi Esteban,
> > >
> > > Seems your jbi descriptor  didn't specify servicemix-cxf-bc as
> > > component-name. Would you please append your jbi.xml of the SA?
> > >
> > > Freeman
> > >
> > >
> > > Esteban Forzani wrote:
> > >
> > >
> > >
> > > > Hi Freeman,
> > > >
> > > > When I use cxf bc provider an consumer I couldn't deploy the SU
> > > > because
> > > > throws the following error:
> > > > "No endpoints found" in org.apache.servicemix.common
> > > > .xbean.AbstractXBeanDeployer
> > > >
> > > > The xbean.xml for the cxf-bc-su is:
> > > > <?xml version="1.0" encoding="UTF-8"?>
> > > > <beans xmlns:sm="http://servicemix.apache.org/config/1.0"
> > > >   xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0"
> > > >   xmlns:tempuri="http://tempuri.org/">
> > > >   <sm:container id="jbi" embedded="true">
> > > >       <sm:endpoints>
> > > >           <cxfbc:consumer
> > > >               wsdl="http://test.intranet/webservices/hello.asmx?WSDL
> > > > "
> > > >               service="tempuri:helloPF"
> > > >               endpoint="helloPFPort"
> > > >               targetEndpoint="helloPFPortProxy"
> > > >               targetService="tempuri:helloPF"
> > > >               targetInterface="tempuri:helloPFSoap">
> > > >           </cxfbc:consumer>
> > > >           <cxfbc:provider
> > > >               wsdl="http://test.intranet/webservices/hello.asmx?WSDL
> > > > "
> > > >               locationURI="
> > > > http://test.intranet/webservices/hello.asmx"
> > > >               service="tempuri:helloPF"
> > > >               endpoint="helloPFPortProxy"
> > > >               interfaceName="tempuri:helloPFSoap">
> > > >           </cxfbc:provider>
> > > >       </sm:endpoints>
> > > >   </sm:container>
> > > > </beans>
> > > >
> > > > Thanks
> > > >
> > > > Esteban
> > > >
> > > > On Fri, Apr 4, 2008 at 9:58 PM, Freeman Fang <freeman.fang@gmail.com
> > > > >
> > > > wrote:
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > > Hi Esteban,
> > > > > They both should work.
> > > > > For cxf bc consumer and provider, ensure the endpoint name used in
> > > > > consumer and provider is different, for example, use
> > > > > helloPFPortProxy
> > > > > for
> > > > > provider in your case. And ensure the service / endpoint for your
> > > > > cxf
> > > > > bc
> > > > > consumer is same as it defined in the wsdl.
> > > > > We have a test to show how to configure cxf bc as a bridge, [1] is
> > > > > the
> > > > > configuration for more details.
> > > > > For cxf bc provider and http consumer, ensure you add
> > > > > useJBIWrapper="false" for cxf bc provider configuration, this is
> > > > > new
> > > > > feature
> > > > > ([2] is jira to track it) after servicemix 3.2.1 release, so you
> > > > > should try
> > > > > it with 3.2.2 snapshot.
> > > > >
> > > > > Best Regards
> > > > >
> > > > > Freeman
> > > > >
> > > > > [1]
> > > > >
> > > > >
> > > > > http://svn.apache.org/repos/asf/servicemix/smx3/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/resources/org/apache/servicemix/cxfbc/cxf_provider_consumer_bridge.xml
> > > > > [2]http://issues.apache.org/activemq/browse/SM-1242
> > > > >
> > > > > Esteban Forzani wrote:
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > > Thanks Freeman and Guillaume, Can I try with cxf bc provider
and
> > > > > > cxf
> > > > > > bc
> > > > > > consumer or http consumer?
> > > > > >
> > > > > > I tried both, when I use cxf bc provider an consumer I couldn't
> > > > > > deploy
> > > > > > the
> > > > > > SU because throws the following error:
> > > > > > "No endpoints found" in
> > > > > > org.apache.servicemix.common.xbean.AbstractXBeanDeployer
> > > > > >
> > > > > >  E.g:
> > > > > > the xbean.xml for the cxf-bc-su is:
> > > > > > <?xml version="1.0" encoding="UTF-8"?>
> > > > > > <beans xmlns:sm="http://servicemix.apache.org/config/1.0"
> > > > > >  xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0"
> > > > > >  xmlns:tempuri="http://tempuri.org/">
> > > > > >  <sm:container id="jbi" embedded="true">
> > > > > >      <sm:endpoints>
> > > > > >          <cxfbc:consumer
> > > > > >              wsdl="
> > > > > > http://test.intranet/webservices/hello.asmx?WSDL
> > > > > > "
> > > > > >              service="tempuri:helloPF"
> > > > > >              endpoint="helloPFPort"
> > > > > >              targetEndpoint="helloPFPort"
> > > > > >              targetService="tempuri:helloPF"
> > > > > >              targetInterface="tempuri:helloPFSoap">
> > > > > >          </cxfbc:consumer>
> > > > > >          <cxfbc:provider
> > > > > >              wsdl="
> > > > > > http://test.intranet/webservices/hello.asmx?WSDL
> > > > > > "
> > > > > >              locationURI="
> > > > > > http://test.intranet/webservices/hello.asmx"
> > > > > >              service="tempuri:helloPF"
> > > > > >              endpoint="helloPFPort"
> > > > > >              interfaceName="tempuri:helloPFSoap">
> > > > > >          </cxfbc:provider>
> > > > > >      </sm:endpoints>
> > > > > >  </sm:container>
> > > > > > </beans>
> > > > > >
> > > > > > When I tried with cxf bc provider and http consumer throw a
> > > > > > NullPointerException in
> > > > > > org.apache.servicemix.cxfbc.CxfBcProvider
> > > > > > becoause
> > > > > > exchange.getOperation() is null!
> > > > > > The xbean.xml for cxf-bc-su is:
> > > > > >
> > > > > > <?xml version="1.0" encoding="UTF-8"?>
> > > > > > <beans
> > > > > >  xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0"
> > > > > >  xmlns:tempuri="http://tempuri.org/">
> > > > > >          <cxfbc:provider
> > > > > >              wsdl="
> > > > > > http://test.intranet/webservices/hellopf.asmx?WSDL"
> > > > > >              locationURI="
> > > > > > http://test.intranet/webservices/hellopf.asmx"
> > > > > >              service="tempuri:helloPF"
> > > > > >              endpoint="helloPFPortProxy"
> > > > > >              interfaceName="tempuri:helloPFSoap"/>
> > > > > > </beans>
> > > > > >
> > > > > > The xbean.xml for http-su is:
> > > > > >
> > > > > > <?xml version="1.0" encoding="UTF-8"?>
> > > > > >
> > > > > > <beans xmlns:http="http://servicemix.apache.org/http/1.0"
> > > > > >      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> > > > > >      xsi:schemaLocation="
> > > > > > http://servicemix.apache.org/http/1.0servicemix-http.3.2.xsd"
> > > > > >
> > > > > >      xmlns:tempuri="http://tempuri.org/" >
> > > > > >  <http:endpoint
> > > > > >              service="tempuri:helloPF"
> > > > > >              endpoint="soap"
> > > > > >              role="consumer"
> > > > > >              locationURI="http://0.0.0.0:8192/helloPF/"
> > > > > >              targetEndpoint="helloPFPortProxy"
> > > > > >              targetService="tempuri:helloPF"/>
> > > > > > </beans>
> > > > > >
> > > > > > Thanks
> > > > > >
> > > > > > Esteban
> > > > > >
> > > > > >
> > > > > > On Tue, Apr 1, 2008 at 3:30 AM, Freeman Fang <
> > > > > > freeman.fang@gmail.com
> > > > > >          wrote:
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > > Hi Esteban,
> > > > > > >
> > > > > > > You can try with cxf bc provider, which needn't specify
soap
> > > > > > > action
> > > > > > > explicitly in the xbean and abstract it dynamically from
the
> > > > > > > message.
> > > > > > >
> > > > > > > Regards
> > > > > > >
> > > > > > > Freeman
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > Esteban Forzani wrote:
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > > Hello,
> > > > > > > >
> > > > > > > > I have a web service with 5 operations, each with
a
> > > > > > > > different
> > > > > > > > SOAPAction.
> > > > > > > > I'm using the servicemix-http component (proxy) to
send a
> > > > > > > > soap
> > > > > > > > request
> > > > > > > > to
> > > > > > > > this webservice.
> > > > > > > > E.g.:
> > > > > > > >
> > > > > > > >  <http:endpoint
> > > > > > > > service="WebServicesProxy-http-su:webServices"
> > > > > > > >              endpoint="providerEndpoint"
> > > > > > > >              role="provider"
> > > > > > > >              locationURI="
> > > > > > > > http://test.example/webservices/webservices.asmx"
> > > > > > > >              defaultMep="
> > > > > > > > http://www.w3.org/2004/08/wsdl/in-out"
> > > > > > > >              soap="true"
> > > > > > > >              soapVersion="1.1"/>
> > > > > > > >
> > > > > > > > The request is send to the ESB with the SOAPAction
(E.g.
> > > > > > > > SOAPAction:
> > > > > > > > operation1)
> > > > > > > >  but the HTTP-BC set the SOAPAction with "".
> > > > > > > >
> > > > > > > > I used the property soapAction in xbean.xml, but fixed
me
> > > > > > > > the
> > > > > > > > operation
> > > > > > > > to
> > > > > > > > the endpoint.
> > > > > > > > E.g.:
> > > > > > > >  <http:endpoint
> > > > > > > > service="WebServicesProxy-http-su:webServices"
> > > > > > > >              endpoint="providerEndpoint"
> > > > > > > >              role="provider"
> > > > > > > >              locationURI="
> > > > > > > > http://test.example/webservices/webservices.asmx"
> > > > > > > >              defaultMep="
> > > > > > > > http://www.w3.org/2004/08/wsdl/in-out"
> > > > > > > >              soap="true"
> > > > > > > >              soapVersion="1.1"
> > > > > > > >              soapAction="http://example.org/operation1"/>
> > > > > > > >
> > > > > > > > Is it possible to put this property dynamically or
take it
> > > > > > > > from
> > > > > > > > the
> > > > > > > > client's
> > > > > > > > request ?
> > > > > > > >
> > > > > > > > Regards,
> > > > > > > >
> > > > > > > > Esteban
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > >
> > > >
> > >
> > >
> >
> >
> >
> >
>
>


-- 
Esteban Forzani

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message