You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Sivaramakrishnan Ganesh <Si...@infosys.com> on 2010/07/26 13:33:16 UTC
Calling external webservice
Hi,
I am using Servicemix v 3.3.1. All I need to do is access a webservice hosted in tomcat via the servicemix ESB.
I need to do this without writing a single line of code for the ESB, i.e. with xbean.xmls of existing JBIs.
I did this:
1) Created a servicemix-http consumer to accept soap requests via the client.html (present in a tutorial).
2) Created a servicemix-cxf-bc provider to the webservice hosted elsewhere.
The idea is http+soap message-> http-consumer BC->NMR->cxf-bc provider->Mywebservice (in elsewhere).
Is this flow correct? Also please find below the contents of XML, I keep getting errors, kindly help, and forgive dumb mistakes!
Warning: I am very new to servicemix! Relatively new to ESB concepts! Don't ask me why I am here! Please welcome me with open hands :)
HTTP-CONSUMER-XBEAN:
<beans xmlns:http="http://servicemix.apache.org/http/1.0" xmlns:tns="http://server.fromjava/">
<http:endpoint
service="tns:externalService"
endpoint="soap"
targetService="tns:AddNumbersImplService"
targetEndpoint="AddNumbersImplService"
role="consumer"
locationURI="http://0.0.0.0:8192/externalService/"
defaultMep="http://www.w3.org/2004/08/wsdl/in-out"
soap="true" />
</beans>
CXF-BC-PROVIDER-XBEAN:
<?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0" xmlns:tns="http://server.fromjava/">
<cxfbc:provider
wsdl="classpath:addnumbers.wsdl"
locationURI="http://localhost:8080/jaxws-fromjava/addnumbers/"
service="tns:AddNumbersImplService"
endpoint="AddNumbersImplService" />
</beans>
Thanks
Re: Calling external webservice
Posted by Jean-Baptiste Onofré <jb...@nanthrax.net>.
Hi,
yes your workflow is correct.
Just a tip, I advise to use "new" HTTP endpoint :
<http:soap-consumer service="" endpoint="" targetService=""
targetEndpoint="" locationURI=""/>
Regards
JB
On 07/26/2010 01:33 PM, Sivaramakrishnan Ganesh wrote:
> Hi,
> I am using Servicemix v 3.3.1. All I need to do is access a webservice hosted in tomcat via the servicemix ESB.
> I need to do this without writing a single line of code for the ESB, i.e. with xbean.xmls of existing JBIs.
> I did this:
> 1) Created a servicemix-http consumer to accept soap requests via the client.html (present in a tutorial).
> 2) Created a servicemix-cxf-bc provider to the webservice hosted elsewhere.
>
> The idea is http+soap message-> http-consumer BC->NMR->cxf-bc provider->Mywebservice (in elsewhere).
> Is this flow correct? Also please find below the contents of XML, I keep getting errors, kindly help, and forgive dumb mistakes!
>
> Warning: I am very new to servicemix! Relatively new to ESB concepts! Don't ask me why I am here! Please welcome me with open hands :)
>
> HTTP-CONSUMER-XBEAN:
> <beans xmlns:http="http://servicemix.apache.org/http/1.0" xmlns:tns="http://server.fromjava/">
> <http:endpoint
> service="tns:externalService"
> endpoint="soap"
> targetService="tns:AddNumbersImplService"
> targetEndpoint="AddNumbersImplService"
> role="consumer"
> locationURI="http://0.0.0.0:8192/externalService/"
> defaultMep="http://www.w3.org/2004/08/wsdl/in-out"
> soap="true" />
> </beans>
>
> CXF-BC-PROVIDER-XBEAN:
> <?xml version="1.0" encoding="UTF-8" ?>
> <beans xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0" xmlns:tns="http://server.fromjava/">
> <cxfbc:provider
> wsdl="classpath:addnumbers.wsdl"
> locationURI="http://localhost:8080/jaxws-fromjava/addnumbers/"
> service="tns:AddNumbersImplService"
> endpoint="AddNumbersImplService" />
> </beans>
>
>
> Thanks
>