Hi,

My comment inline
On 2010-3-25, at 上午4:32, criswebea wrote:


Hi,

I have been working on configuring ServiceMix as a web service proxy with mixed results. I originally tried to configure the proxy using CXF- BC but that didn't work; then I managed to configure the proxy using the HTTP BC
with the same xbean.xml configuration that didn't work with CXF-BC.

- Here is how the xbean.xml is configured for CXF-BC using a provider and a
consumer:

...
<cxfbc:provider service="account:AccountService"
 endpoint="Account"
 locationURI="http://localhost:7001/account/services/AccountService";
 wsdl="http://localhost:7001/account/services/AccountService?WSDL";
/>

<cxfbc:consumer service="account:AccountServiceProxy"              
 endpoint="AccountProxy"
 targetService="account:AccountService"       
 targetEndpoint="Account"
 wsdl="http://localhost:7001/account/services/AccountService?WSDL";
locationURI="http://localhost:8192/services/Account";
/>
...

In this configuration ServiceMix complains that the AccountServiceProxy does
not exist.
It should be cxfbc:consumer service="account:AccountService"
It will check the wsdl to find the AccountService, so if your wsdl don't have AccountServiceProxy, you will see the error. Also, you may need take a look at CxfBcProviderConsumerTest[1] which is exactly same as your scenario.
[1]https://svn.apache.org/repos/asf/servicemix/components/bindings/servicemix-cxf-bc/trunk/src/test/java/org/apache/servicemix/cxfbc/CxfBcProviderConsumerTest.java

Freeman


- Here is the xbean.xml config file used with the http bc:

<http:endpoint service="account:AccountService"
 endpoint="Account"
 role="provider"
 locationURI="http://localhost:7001/account/services/AccountService";
wsdlResource="http://localhost:7001/account/services/AccountService?WSDL "
 soap="true"
 soapVersion="1.1"
/>

<http:endpoint service="account:AccountServiceProxy"
 endpoint="AccountProxy"
 targetService="account:AccountService"
 targetEndpoint="Account"
 role="consumer"
 locationURI="http://localhost:8192/services/Account";
 defaultMep="http://www.w3.org/2004/08/wsdl/in-out";
 soap="true"
/>

In both cases the real web service
(http://localhost:7001/account/services/AccountService) exists, but it only works fine in the second case. The configuration is pretty much the same in
both cases.

Does anyone know why using CXF-BC does not work?

Thanks,

Cris.
--
View this message in context: 
http://old.nabble.com/Web-service-proxy-using-CXF-BC-vs-HTTP-BC-tp28020919p28020919.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.



--
Freeman Fang
------------------------
Open Source SOA: http://fusesource.com

Reply via email to