Hi Freeman, Thank you very much for your answer!
I changed the WSDL but looks like the CXF-BC component still understands the message exchange like "in-out". What I want to do is: [External client]-----SOAP(in-only)---->[CXF-BC consumer]---(in-only)--->[JMS provider]--->(JMS queue) (JMS queue)--->[CXF-BC provider]----SOAP--->[External web service] I want to use the JMS queue to provide asyncronous behavior to the service. Is there a better way to achieve this? Maybe the JMS flow? I am a newbie on the WSDL field. I've found that the way to configure an operation as one-way in WSDL is to create the operation with no "output" elements. If you have an example of a WSDL that works as in-only please send it to me. Follow the WSDL code i am using: ================================================== * <?xml version="1.0" encoding="UTF-8"?> <wsdl:definitions xmlns:ns1="http://schemas.xmlsoap.org/wsdl/soap/http" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/ " xmlns:tns=" http://DefaultNamespace <http://defaultnamespace/>" xmlns:wsdl=" http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="PedidoService" targetNamespace="http://DefaultNamespace<http://defaultnamespace/> "> <wsdl:types> <xsd:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://DefaultNamespace<http://defaultnamespace/> "> <xsd:element name="enviarPedido" type="tns:enviarPedido"/> <xsd:complexType name="enviarPedido"> <xsd:sequence> <xsd:element minOccurs="0" name="arg0" type="xsd:string"/> </xsd:sequence> </xsd:complexType> <xsd:element name="enviarPedidoResponse" type="tns:enviarPedidoResponse"/> <xsd:complexType name="enviarPedidoResponse"> <xsd:sequence/> </xsd:complexType> </xsd:schema> </wsdl:types> <wsdl:message name="enviarPedido"> <wsdl:part element="tns:enviarPedido" name="parameters"> </wsdl:part> </wsdl:message> <wsdl:message name="enviarPedidoResponse"> <wsdl:part element="tns:enviarPedidoResponse" name="parameters"> </wsdl:part> </wsdl:message> <wsdl:portType name="PedidoServicePortType"> <wsdl:operation name="enviarPedido"> <wsdl:input message="tns:enviarPedido" name="enviarPedido"> </wsdl:input> </wsdl:operation> </wsdl:portType> <wsdl:binding name="PedidoServiceSoapBinding" type="tns:PedidoServicePortType"> <soap:binding style="document" transport=" http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="enviarPedido"> <soap:operation soapAction="enviarPedido" style="document"/> <wsdl:input name="enviarPedido"> <soap:body use="literal"/> </wsdl:input> </wsdl:operation> </wsdl:binding> <wsdl:service name="PedidoService"> <wsdl:port binding="tns:PedidoServiceSoapBinding" name="PedidoServicePort"> <soap:address location="http://localhost:6981/PedidoService"/> </wsdl:port> </wsdl:service> </wsdl:definitions> *================================================== I have two SU´s: SU 01: ================================================== * <beans xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0" xmlns:pedidos="http://DefaultNamespace <http://defaultnamespace/>"> <cxfbc:consumer wsdl="classpath:pedidos.wsdl" targetService="pedidos:PedidoFilaProvider" endpoint="PedidoPort" /> <cxfbc:provider wsdl="classpath:pedidos.wsdl" locationURI="http://localhost:6980/PedidoService" service="pedidos:PedidoService"> </cxfbc:provider> </beans> * ================================================== SU 02: ================================================== * <beans xmlns:jms="http://servicemix.apache.org/jms/1.0" xmlns:pedidos="http://DefaultNamespace <http://defaultnamespace/>"> <!-- Read data from NMR and sends to jms:queue/pedidoFila --> <jms:endpoint service="pedidos:PedidoFilaProvider" endpoint="PedidoFilaProvider" role="provider" destinationStyle="queue" jmsProviderDestinationName="queue/pedidoFila" connectionFactory="#connectionFactory" interfaceName="pedidos:PedidoFila" /> <jms:endpoint service="pedidos:PedidoFilaConsumer" endpoint="PedidoFilaConsumer" targetService="pedidos:PedidoService" role="consumer" destinationStyle="queue" jmsProviderDestinationName="queue/pedidoFila" connectionFactory="#connectionFactory" /> <bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory"> <property name="brokerURL" value="tcp://localhost:61616" /> </bean> </beans> * Best regards, Wilson ================================================== On Jan 1, 2008 3:54 AM, Freeman Fang <[EMAIL PROTECTED]> wrote: > Hi Wilson, > cxf-bc will detect the mep for an invocation based on the service model > which is built from the wsdl automatically , so you needn't specify it > explicitly yourself. > > Best Regards > Freeman > > >
