Hi servicemix community,
I wonder if u can help me to understand how to configure a ws (spring)
bundle on service mix in order to let it manage ws client xsd soap requests
avoiding a direct connection between ws client and ws provider.

I have a ws provider (jboss + db) and the bundle of this ws is deployed in
fuse service mix.
Everything works fine, if a ws client sends soap requests to the bus, the
bus passes that requests to the ws provider. The bus waits for ws provider
to respond and answers to the ws client.

This does not happen if the ws client needs to access to the xsd schemas
written in the wsdl that service mix is currently running.

Tipycally this happens when creating a soapui project.
If I create a soapui project , I put a name for my project and the ip
address of the wsdl that is running in service mix. In this situation soapui
creates a project starting from what is written in the wsdl and in there are
present the xsd references to the schemas that are in the ws provider. In
this situation and in my current bundle configuration when this xsd request
comes from the ws client the bus tells to the client to go directly to the
provider to receive and answer to that.

I need the bus to be able to manage this kind of requests avoiding the
direct connection between ws client and provider.

I know I have to change something into the beans.xml configuration and maybe
in the manifest too, in order to let service mix rewrite some parts of the
wsdl, but i can not find an example of that.

thank u in advance for any answer to this question.
I post here my beans.xml
Gep
<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xmlns:cxf="http://camel.apache.org/schema/cxf";
xmlns:cc="http://www.myweb.ar/service/ws_service";
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://camel.apache.org/schema/spring
http://camel.apache.org/schema/spring/camel-spring.xsd
http://camel.apache.org/schema/cxf
http://camel.apache.org/schema/cxf/camel-cxf.xsd";>

<import resource="classpath:META-INF/cxf/cxf.xml"/>
<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />

<cxf:cxfEndpoint id="ws_bus"
address="http://xxx.xx.xx.xx/bus/ws_service";
wsdlURL="ws_service_implementation.wsdl"
serviceName="cc:ws_service" endpointName="cc:ws_service"/>

<cxf:cxfEndpoint id="ws_provider"
address="http://yyy.yy.yy.yy:8080/provider/ws_service";
wsdlURL="ws_service_implementation.wsdl"
serviceName="cc:ws_service" endpointName="cc:ws_service"/>

<camelContext id="converter" xmlns="http://camel.apache.org/schema/spring";>

<route streamCache="true">
<from uri="cxf:bean:ws_bus?dataFormat=PAYLOAD" />
<to uri="cxf:bean:ws_provider?dataFormat=PAYLOAD" />
</route>
</camelContext>
</beans>

--
View this message in context: 
http://servicemix.396122.n5.nabble.com/How-ServiceMix-can-pass-through-the-ws-provider-xml-schema-requests-from-a-client-tp5589841p5589841.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to