Yes, that's exactly what i mean.

The param tag didn't appear in my first for some obscur reason. That's why i
was saying my SOAP message is correct.

Is there any way to trace what is going on in the bus? Something better than
the debug log?
I'd like to check the SOAP message generated by the Servicemix Cxf bc
provider.



Freeman Fang wrote:
> 
> You mean your request soap message already has < param> yourParam<
> /param> element? and it still doesn't work ? (obviously I make a
> mistake in my prevoious mail, I mismactch the response and request,
> sorry for it)
> 
> 
> On Nov 27, 2007 8:06 PM, Florent <[EMAIL PROTECTED]> wrote:
>>
>> There is a problem when i post the "param" tag : it does not appear in
>> the
>> forum post. I edited my previous message and put some spaces :
>>
>> <tns:getProtoDTO>
>> < param>myparam</ param>
>> </tns:getProtoDTO>
>>
>> Sorry, i didn't notice it in my first post. I think the misunderstanding
>> came from that...
>>
>> Best Regards,
>> Florent
>>
>>
>>
>> Florent wrote:
>> >
>> > Ok, i think i understand why you said my soap enveloppe in incorrect.
>> >
>> > Here is the one i'm using (in my first post, i have to admit it wasn't
>> > correct) :
>> >
>> > <?xml version=\"1.0\" encoding=\"UTF-8\"?>
>> > <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/";
>> > xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\";
>> > xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\";
>> > xmlns:tns=\"http://ejb.proto.sopra.com\";>
>> > <env:Body>
>> > <tns:getProtoDTO>
>> > < param>myparam</ param>
>>
>> > </tns:getProtoDTO>
>> > </env:Body>
>> > </env:Envelope>
>> >
>> >
>> >
>> > Florent wrote:
>> >>
>> >>
>> >> this :
>> >>
>> >> Standalone client <--> SOAP message <--> Servicemix cxf bc
>> consumer<--->
>> >> JBI message  <--->Servicemix Cxf bc provider <---> soap message
>> >> <-->Websphere
>> >> Application Server
>> >>
>> >> is exactly what i want to be done (and what i'm trying to do) :)
>> >>
>> >> According to your reply, i should use the following soap message :
>> >>
>> >> <?xml version=\"1.0\" encoding=\"UTF-8\"?>
>> >> <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/";
>> >> xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\";
>> >> xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\";
>> >> xmlns:tns=\"http://ejb.proto.sopra.com\";>
>> >> <env:Body>
>> >> <tns:getProtoDTO>
>> >> <date>2007-11-27T10:04:16.347Z</date>
>> >> <dble>0.0</dble>
>> >> <integ>1</integ>
>> >> <liste>
>> >> <string>s01</string><string>s02</string><string>s03</string>
>> >> </liste>
>> >> </tns:getProtoDTO>
>> >> </env:Body>
>> >> </env:Envelope>
>> >>
>> >> But, according to my wsdl, this is the response soap message, not the
>> >> request one !
>> >>
>> >> Operation :
>> >> <wsdl:operation name="getProtoDTO">
>> >>        <wsdlsoap:operation soapAction="getProtoDTO"/>
>> >>        <wsdl:input name="getProtoDTORequest">
>> >>          <wsdlsoap:body use="literal"/>
>> >>       </wsdl:input>
>> >>        <wsdl:output name="getProtoDTOResponse">
>> >>          <wsdlsoap:body use="literal"/>
>> >>       </wsdl:output>
>> >> </wsdl:operation>
>> >>
>> >> PortType :
>> >> <wsdl:portType name="ProtoBean">
>> >>      <wsdl:operation name="getProtoDTO">
>> >>        <wsdl:input message="intf:getProtoDTORequest"
>> >> name="getProtoDTORequest"/>
>> >>        <wsdl:output message="intf:getProtoDTOResponse"
>> >> name="getProtoDTOResponse"/>
>> >>     </wsdl:operation>
>> >> </wsdl:portType>
>> >>
>> >>
>> >> Input / request :
>> >> <wsdl:message name="getProtoDTORequest">
>> >>      <wsdl:part element="intf:getProtoDTO" name="parameters"/>
>> >> </wsdl:message>
>> >>
>> >> Element :
>> >> <element name="getProtoDTO">
>> >>     <complexType>
>> >>      <sequence>
>> >>       <element name="param" nillable="true" type="xsd:string"/>
>> >>      </sequence>
>> >>     </complexType>
>> >> </element>
>> >>
>> >> Output / response :
>> >> <wsdl:message name="getProtoDTOResponse">
>> >>      <wsdl:part element="intf:getProtoDTOResponse" name="parameters"/>
>> >> </wsdl:message>
>> >>
>> >> Element :
>> >> <element name="getProtoDTOResponse">
>> >>     <complexType>
>> >>      <sequence>
>> >>       <element name="getProtoDTOReturn" nillable="true"
>> >> type="tns2:ProtoDTO"/>
>> >>      </sequence>
>> >>     </complexType>
>> >> </element>
>> >>
>> >> So, the output is the ProtoDTO complex type, and the input is a
>> string.
>> >>
>> >> Did i misunderstand something? May be i'm confusing provider/consumer
>> >> role?
>> >>
>> >>
>> >>
>> >>
>> >> Freeman Fang wrote:
>> >>>
>> >>> Comments in line
>> >>>
>> >>> Florent wrote:
>> >>>> Morning Freeman,
>> >>>>
>> >>>> I tried to modify my SOAP message, but it didn't work : i still get
>> the
>> >>>> same
>> >>>> error.
>> >>>>
>> >>> What's your new soap message now?
>> >>>> I also tried to call the web service with this enveloppe and a
>> >>>> standalone
>> >>>> client : i got a "wrong parameter error".
>> >>>>
>> >>>> I think my SOAP message is correct : i tried to generate it from the
>> >>>> RAD 7
>> >>>> web service test and it was the same one. Plus, my business method
>> has
>> >>>> one
>> >>>> parameter (a string) and a complex type as return type.
>> >>>>
>> >>> According to the schema from your wsdl, your soap messge
>> >>> <getProtoDTO>ddd</getProteDTO> is not correct, under <getProtoDTO>
>> >>> element, there should be element <date> or <dble> or <integ> or
>> <liste>
>> >>>
>> >>> Btw, different soap tool kit may generate soap message with little
>> >>> different, which may cause interoperability problem
>> >>>
>> >>>> As i'm totally new to servicemix, so there is probably something i
>> >>>> don't
>> >>>> understand.
>> >>>>
>> >>>> What i want to do :
>> >>>> SOAP message <--> Servicemix cxf bc <---> SOAP message <-->Websphere
>> >>>> Application Server
>> >>>>
>> >>>> Considering the debug log, what i think it's going on :
>> >>>> SOAP message <--> Servicemix cxf bc <---> JBI message <-->Websphere
>> >>>> Application Server
>> >>>>
>> >>> no, what's going on is
>> >>>
>> >>> SOAP message <--> Servicemix cxf bc consumer<---> JBI message
>> >>> <--->Servicemix Cxf bc provider <---> soap message <-->Websphere
>> >>> Application Server
>> >>>
>> >>> So what's reach your websphere application server is soap message,
>> not
>> >>> jbi message.
>> >>> May be you need refer to [1]  which is similiar as your scenario
>> >>> [1]
>> >>>
>> http://svn.apache.org/repos/asf/servicemix/trunk/deployables/bindingcomponents/servicemix-cxf-bc/src/test/java/org/apache/servicemix/cxfbc/CxfBcProviderConsumerTest.java
>> >>>
>> >>>> So, i don't think WAS support JBI message... and that could explain
>> my
>> >>>> error
>> >>>> (i no longer think it's a soap verion problem).
>> >>>>
>> >>>> http://localhost:9080/PROTOServiceMixWeb/services/ProtoBean = thrid
>> >>>> party
>> >>>> web service URL.
>> >>>> http://localhost:8092/ProtoBeanService/ = servicemix web service.
>> >>>>
>> >>>> I only want to call my web service, but i want to call it using a
>> >>>> servicemix
>> >>>> URL.
>> >>>>
>> >>>> Thanks again for your help,
>> >>>> Best Regards,
>> >>>> Florent.
>> >>>>
>> >>>>
>> >>>>
>> >>>> Freeman Fang wrote:
>> >>>>
>> >>>>> Hi Florent,
>> >>>>>
>> >>>>> This problem has nothing to do with soap version.
>> >>>>>
>> >>>>> The problem is that your hard code soap request message is not
>> >>>>> correct.
>> >>>>>
>> >>>>> According to the schema in wsdl you append, it should be something
>> >>>>> like
>> >>>>>
>> >>>>> <env:Envelope
>> >>>>> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
>> >>>>> xmlns:en
>> >>>>> v="http://schemas.xmlsoap.org/soap/envelope/";
>> >>>>> xmlns:xsd="http://www.w3.org/2001/
>> >>>>> XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>> >>>>> xmlns:tns="http
>> >>>>> ://ejb.proto.mycompany.com"><env:Body><tns:getProtoDTO>
>> >>>>> <date>your date</date>
>> >>>>> <dble>your dble</dble>
>> >>>>> <integ>your integ</integ>
>> >>>>> <liste>your liste</liste>
>> >>>>> </tns:getPr
>> >>>>> otoDTO></env:Body></env:Envelope>
>> >>>>>
>> >>>>> You shouldn't use
>> >>>>> <tns:getProtoDTO>something</tns:getProtoDTO> directly without
>> element
>> >>>>> tag
>> >>>>> defined in the schema.
>> >>>>> For some complex schema, write soap message yourself is not so
>> easy,
>> >>>>> so we
>> >>>>> prefer to use some soap tool kit to generate soap message for you,
>> may
>> >>>>> be
>> >>>>> you can  try to use apache cxf, basically generate code stub from
>> the
>> >>>>> wsdl, and what you need do is just write client invoke code as
>> normal
>> >>>>> java
>> >>>>> operation invoke and  cxf will genearate soap message for you.
>> >>>>>
>> >>>>> Would you please try it again?
>> >>>>>
>> >>>>> Best Regards
>> >>>>>
>> >>>>> Freeman
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>> Florent wrote:
>> >>>>>
>> >>>>>> Hi Freeman,
>> >>>>>>
>> >>>>>> Indeed,
>> http://localhost:9080/PROTOServiceMixWeb/services/ProtoBean
>> >>>>>> use
>> >>>>>> soap
>> >>>>>> 1.1.
>> >>>>>> But i don't know which soap version
>> >>>>>> http://localhost:8092/ProtoBeanService/
>> >>>>>> is using...
>> >>>>>>
>> >>>>>> The third party webservice is hosted by Websphere Application
>> Server
>> >>>>>> 6.1.
>> >>>>>>
>> >>>>>> I don't really know what cxf is doing to the message, is it
>> possible
>> >>>>>> to
>> >>>>>> log/trace it?
>> >>>>>>
>> >>>>>> I enabled debug log and added interceptors in my xbean.xml, here
>> is
>> >>>>>> the
>> >>>>>> output :
>> >>>>>>
>> >>>>>> INFO: Inbound Message
>> >>>>>> --------------------------------------
>> >>>>>> Encoding: utf-8
>> >>>>>> Headers: {Content-Length=[353], User-Agent=[IBM WebServices/1.0],
>> >>>>>> Host=[ITEM-509
>> >>>>>> 73:8092], connection=[Keep-Alive], Date=[Mon, 26 Nov 2007 08:59:47
>> >>>>>> GMT],
>> >>>>>> SOAPAct
>> >>>>>> ion=[], Pragma=[no-cache], content-type=[text/xml; charset=utf-8],
>> >>>>>> Cache-Control
>> >>>>>> =[no-cache],
>> Accept=[application/soap+xml,multipart/related,text/*]}
>> >>>>>> Message:
>> >>>>>> <env:Envelope
>> >>>>>> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
>> >>>>>> xmlns:en
>> >>>>>> v="http://schemas.xmlsoap.org/soap/envelope/";
>> >>>>>> xmlns:xsd="http://www.w3.org/2001/
>> >>>>>> XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>> >>>>>> xmlns:tns="http
>> >>>>>>
>> ://ejb.proto.mycompany.com"><env:Body><tns:getProtoDTO>ddd</tns:getPr
>> >>>>>> otoDTO></env:Body></env:Envelope>
>> >>>>>> --------------------------------------
>> >>>>>> DEBUG - CxfBcComponent                 - Created correlation id:
>> >>>>>> ID:172.16.180.193-1167b1f58b2-4:1
>> >>>>>> DEBUG - DeliveryChannelImpl            - SendSync
>> >>>>>> ID:172.16.180.193-1167b1f58b2-4:1 in
>> >>>>>> DeliveryChannel{servicemix-cxf-bc}
>> >>>>>> DEBUG - SedaFlow                       - Called Flow send
>> >>>>>> DEBUG - DeliveryChannelImpl            - Waiting for exchange
>> >>>>>> ID:172.16.180.193-1167b1f58b2-4:1 (1d7a7b3) to be answered in
>> >>>>>> DeliveryChannel{servicemix-cxf-bc} from sendSync
>> >>>>>> DEBUG - SedaQueue                      -
>> >>>>>> [EMAIL PROTECTED]
>> dequeued
>> >>>>>> exchange: InOut[
>> >>>>>>   id: ID:172.16.180.193-1167b1f58b2-4:1
>> >>>>>>   status: Active
>> >>>>>>   role: provider
>> >>>>>>   interface: {http://ejb.proto.mycompany.com}ProtoBean
>> >>>>>>   service: {http://ejb.proto.mycompany.com}ProtoBeanService
>> >>>>>>   endpoint: ProtoBean
>> >>>>>>   operation: {http://ejb.proto.mycompany.com}getProtoDTO
>> >>>>>>   in: <?xml version="1.0" encoding="UTF-8"?><jbi:message
>> >>>>>> xmlns:jbi="http://java.
>> >>>>>> sun.com/xml/ns/jbi/wsdl-11-wrapper"
>> >>>>>> xmlns:msg="http://ejb.proto.mycompany.com"; name=
>> >>>>>> "getProtoDTORequest" type="msg:getProtoDTORequest"
>> >>>>>> version="1.0"><jbi:part><tns:
>> >>>>>> getProtoDTO
>> xmlns:tns="http://ejb.proto.mycompany.com";>ddd</tns:getPr
>> >>>>>> otoDTO></jbi:part></jbi:message>
>> >>>>>> ]
>> >>>>>> DEBUG - CxfBcComponent                 - Received exchange:
>> status:
>> >>>>>> Active,
>> >>>>>> role: provider
>> >>>>>> DEBUG - CxfBcComponent                 - Retrieved correlation id:
>> >>>>>> ID:172.16.180.193-1167b1f58b2-4:1
>> >>>>>> DEBUG - DeliveryChannelImpl            - Send
>> >>>>>> ID:172.16.180.193-1167b1f58b2-4:1in
>> >>>>>> DeliveryChannel{servicemix-cxf-bc}
>> >>>>>> DEBUG - SedaFlow                       - Called Flow send
>> >>>>>> DEBUG - SedaQueue                      -
>> >>>>>> [EMAIL PROTECTED]
>> dequeued
>> >>>>>> exchange: InOut[
>> >>>>>>   id: ID:172.16.180.193-1167b1f58b2-4:1
>> >>>>>>   status: Active
>> >>>>>>   role: consumer
>> >>>>>>   interface: {http://ejb.proto.mycompany.com}ProtoBean
>> >>>>>>   service: {http://ejb.proto.mycompany.com}ProtoBeanService
>> >>>>>>   endpoint: ProtoBean
>> >>>>>>   operation: {http://ejb.proto.mycompany.com}getProtoDTO
>> >>>>>>   in: <?xml version="1.0" encoding="UTF-8"?><jbi:message
>> >>>>>> xmlns:jbi="http://java.
>> >>>>>> sun.com/xml/ns/jbi/wsdl-11-wrapper"
>> >>>>>> xmlns:msg="http://ejb.proto.mycompany.com"; name=
>> >>>>>> "getProtoDTORequest" type="msg:getProtoDTORequest"
>> >>>>>> version="1.0"><jbi:part><tns:
>> >>>>>> getProtoDTO
>> xmlns:tns="http://ejb.proto.mycompany.com";>ddd</tns:getPr
>> >>>>>> otoDTO></jbi:part></jbi:message>
>> >>>>>>   out: null
>> >>>>>> ]
>> >>>>>> DEBUG - DeliveryChannelImpl            - Notifying exchange
>> >>>>>> ID:172.16.180.193-1167b1f58b2-4:1(1d7a7b3) in
>> >>>>>> DeliveryChannel{servicemix-cxf-bc} from
>> >>>>>> processInboundSynchronousExchange
>> >>>>>> DEBUG - DeliveryChannelImpl            - Notified:
>> >>>>>> ID:172.16.180.193-1167b1f58b2-4:1(1d7a7b3) in
>> >>>>>> DeliveryChannel{servicemix-cxf-bc} from sendSync
>> >>>>>> 26 nov. 2007 09:59:48
>> >>>>>> org.apache.cxf.interceptor.LoggingOutInterceptor$LoggingCallback
>> >>>>>> onClose
>> >>>>>> INFO: Outbound Message
>> >>>>>> --------------------------------------
>> >>>>>> <soap:Envelope
>> >>>>>> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";><soap:Body
>> >>>>>>  /></soap:Envelope>
>> >>>>>> --------------------------------------
>> >>>>>> DEBUG - DeliveryChannelImpl            - Send
>> >>>>>> ID:172.16.180.193-1167b1f58b2-4:1
>> >>>>>> in DeliveryChannel{servicemix-cxf-bc}
>> >>>>>> DEBUG - SedaFlow                       - Called Flow send
>> >>>>>> DEBUG - SedaQueue                      -
>> >>>>>> [EMAIL PROTECTED]
>> dequeued
>> >>>>>> exchange: InOut[
>> >>>>>>   id: ID:172.16.180.193-1167b1f58b2-4:1
>> >>>>>>   status: Done
>> >>>>>>   role: provider
>> >>>>>>   interface: {http://ejb.proto.mycompany.com}ProtoBean
>> >>>>>>   service: {http://ejb.proto.mycompany.com}ProtoBeanService
>> >>>>>>   endpoint: ProtoBean
>> >>>>>>   operation: {http://ejb.proto.mycompany.com}getProtoDTO
>> >>>>>>   in: <?xml version="1.0" encoding="UTF-8"?><jbi:message
>> >>>>>> xmlns:jbi="http://java.
>> >>>>>> sun.com/xml/ns/jbi/wsdl-11-wrapper"
>> >>>>>> xmlns:msg="http://ejb.proto.mycompany.com"; name=
>> >>>>>> "getProtoDTORequest" type="msg:getProtoDTORequest"
>> >>>>>> version="1.0"><jbi:part><tns:
>> >>>>>> getProtoDTO
>> xmlns:tns="http://ejb.proto.mycompany.com";>ddd</tns:getPr
>> >>>>>> otoDTO></jbi:part></jbi:message>
>> >>>>>>   out: null
>> >>>>>> ]
>> >>>>>> DEBUG - CxfBcComponent                 - Received exchange:
>> status:
>> >>>>>> Done,
>> >>>>>> role:provider
>> >>>>>> DEBUG - CxfBcComponent                 - Retrieved correlation id:
>> >>>>>> ID:172.16.180.193-1167b1f58b2-4:1
>> >>>>>> javax.jbi.messaging.MessagingException: Out not supported
>> >>>>>>         at
>> >>>>>>
>> org.apache.servicemix.jbi.messaging.MessageExchangeImpl.setMessage(MessageExchangeImpl.java:357)
>> >>>>>>         at
>> >>>>>>
>> org.apache.servicemix.cxfbc.CxfBcProviderMessageObserver.onMessage(CxfBcProviderMessageObserver.java:125)
>> >>>>>>         at
>> >>>>>>
>> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1932)
>> >>>>>>         at
>> >>>>>>
>> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1790)
>> >>>>>>         at
>> >>>>>>
>> org.apache.servicemix.cxfbc.CxfBcProvider.process(CxfBcProvider.java:166)
>> >>>>>>         at
>> >>>>>>
>> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:538)
>> >>>>>>         at
>> >>>>>>
>> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:490)
>> >>>>>>         at
>> >>>>>>
>> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
>> >>>>>>         at
>> >>>>>>
>> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:610)
>> >>>>>>         at
>> >>>>>>
>> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:170)
>> >>>>>>         at
>> >>>>>>
>> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:167)
>> >>>>>>         at
>> >>>>>>
>> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
>> >>>>>>         at
>> >>>>>>
>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
>> >>>>>>         at
>> >>>>>>
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
>> >>>>>>         at java.lang.Thread.run(Thread.java:595)
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>> Here is my wsdl used by servicemix (the one used by the AS is the
>> >>>>>> same
>> >>>>>> one,
>> >>>>>> except the service location) :
>> >>>>>>
>> >>>>>> <?xml version="1.0" encoding="UTF-8"?>
>> >>>>>> <wsdl:definitions targetNamespace="http://ejb.proto.mycompany.com";
>> >>>>>>  xmlns:impl="http://ejb.proto.mycompany.com";
>> >>>>>>  xmlns:intf="http://ejb.proto.mycompany.com";
>> >>>>>>  xmlns:tns2="http://dto.proto.mycompany.com";
>> >>>>>>  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
>> >>>>>>  xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/";
>> >>>>>>  xmlns:wsi="http://ws-i.org/profiles/basic/1.1/xsd";
>> >>>>>>  xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
>> >>>>>>  <wsdl:types>
>> >>>>>>          <schema targetNamespace="http://ejb.proto.mycompany.com";
>> >>>>>>                  xmlns="http://www.w3.org/2001/XMLSchema";
>> >>>>>>                  xmlns:tns2="http://dto.proto.mycompany.com";
>> >>>>>>                  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
>> >>>>>>                  xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
>> >>>>>>                  <import
>> namespace="http://dto.proto.mycompany.com"; />
>> >>>>>>                  <element name="getProtoDTOResponse">
>> >>>>>>                          <complexType>
>> >>>>>>                                  <sequence>
>> >>>>>>                                          <element
>> name="getProtoDTOReturn"
>> >>>>>>                                                  nillable="true"
>> type="tns2:ProtoDTO" />
>> >>>>>>                                  </sequence>
>> >>>>>>                          </complexType>
>> >>>>>>                  </element>
>> >>>>>>                  <element name="getProtoDTO">
>> >>>>>>                          <complexType>
>> >>>>>>                                  <sequence>
>> >>>>>>                                          <element name="param"
>> nillable="true"
>> >>>>>>                                                  type="xsd:string"
>> />
>> >>>>>>                                  </sequence>
>> >>>>>>                          </complexType>
>> >>>>>>                  </element>
>> >>>>>>                  <complexType name="ArrayOf_xsd_nillable_string">
>> >>>>>>                          <sequence>
>> >>>>>>                                  <element maxOccurs="unbounded"
>> minOccurs="0"
>> >>>>>>                                          name="string"
>> nillable="true" type="xsd:string" />
>> >>>>>>                          </sequence>
>> >>>>>>                  </complexType>
>> >>>>>>          </schema>
>> >>>>>>          <schema targetNamespace="http://dto.proto.mycompany.com";
>> >>>>>>                  xmlns="http://www.w3.org/2001/XMLSchema";
>> >>>>>>                  xmlns:intf="http://ejb.proto.mycompany.com";
>> >>>>>>                  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
>> >>>>>>                  xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
>> >>>>>>                  <import
>> namespace="http://ejb.proto.mycompany.com"; />
>> >>>>>>                  <complexType name="ProtoDTO">
>> >>>>>>                          <sequence>
>> >>>>>>                                  <element name="date"
>> nillable="true"
>> >>>>>>                                          type="xsd:dateTime" />
>> >>>>>>                                  <element name="dble"
>> nillable="true"
>> >>>>>>                                          type="xsd:double" />
>> >>>>>>                                  <element name="integ"
>> type="xsd:int" />
>> >>>>>>                                  <element name="liste"
>> nillable="true"
>> >>>>>>                                         
>> type="impl:ArrayOf_xsd_nillable_string" />
>> >>>>>>                          </sequence>
>> >>>>>>                  </complexType>
>> >>>>>>          </schema>
>> >>>>>>  </wsdl:types>
>> >>>>>>
>> >>>>>>  <wsdl:message name="getProtoDTORequest">
>> >>>>>>          <wsdl:part element="intf:getProtoDTO" name="parameters"
>> />
>> >>>>>>
>> >>>>>>  </wsdl:message>
>> >>>>>>
>> >>>>>>  <wsdl:message name="getProtoDTOResponse">
>> >>>>>>          <wsdl:part element="intf:getProtoDTOResponse"
>> name="parameters" />
>> >>>>>>
>> >>>>>>  </wsdl:message>
>> >>>>>>
>> >>>>>>  <wsdl:portType name="ProtoBean">
>> >>>>>>          <wsdl:operation name="getProtoDTO">
>> >>>>>>                  <wsdl:input message="intf:getProtoDTORequest"
>> >>>>>>                          name="getProtoDTORequest" />
>> >>>>>>
>> >>>>>>                  <wsdl:output message="intf:getProtoDTOResponse"
>> >>>>>>                          name="getProtoDTOResponse" />
>> >>>>>>
>> >>>>>>          </wsdl:operation>
>> >>>>>>
>> >>>>>>  </wsdl:portType>
>> >>>>>>
>> >>>>>>  <wsdl:binding name="ProtoBeanSoapBinding" type="intf:ProtoBean">
>> >>>>>>
>> >>>>>>          <wsdlsoap:binding style="document"
>> >>>>>>                  transport="http://schemas.xmlsoap.org/soap/http";
>> />
>> >>>>>>
>> >>>>>>          <wsdl:operation name="getProtoDTO">
>> >>>>>>                  <wsdlsoap:operation soapAction="getProtoDTO" />
>> >>>>>>
>> >>>>>>                  <wsdl:input name="getProtoDTORequest">
>> >>>>>>                          <wsdlsoap:body use="literal" />
>> >>>>>>
>> >>>>>>                  </wsdl:input>
>> >>>>>>
>> >>>>>>                  <wsdl:output name="getProtoDTOResponse">
>> >>>>>>                          <wsdlsoap:body use="literal" />
>> >>>>>>
>> >>>>>>                  </wsdl:output>
>> >>>>>>
>> >>>>>>          </wsdl:operation>
>> >>>>>>
>> >>>>>>  </wsdl:binding>
>> >>>>>>
>> >>>>>>  <wsdl:service name="ProtoBeanService">
>> >>>>>>          <wsdl:port binding="intf:ProtoBeanSoapBinding"
>> >>>>>>                  name="ProtoBean">
>> >>>>>>                  <wsdlsoap:address
>> >>>>>>                         
>> location="http://localhost:8092/ProtoBeanService/"; />
>> >>>>>>
>> >>>>>>          </wsdl:port>
>> >>>>>>
>> >>>>>>  </wsdl:service>
>> >>>>>>
>> >>>>>> </wsdl:definitions>
>> >>>>>>
>> >>>>>> Thanks in advance,
>> >>>>>> Florent.
>> >>>>>>
>> >>>>>>
>> >>>>>> Freeman Fang-2 wrote:
>> >>>>>>
>> >>>>>>
>> >>>>>>> Hi Florent,
>> >>>>>>> Do you mean
>> >>>>>>> http://localhost:9080/PROTOServiceMixWeb/services/ProtoBean   use
>> >>>>>>> soap1.1 and http://localhost:8092/ProtoBeanService/  use soap
>> 1.2?
>> >>>>>>> Which soap toolkit are the third party webservice using?
>> >>>>>>> Would you please append the wsdl used for two webservices?
>> >>>>>>>
>> >>>>>>> Best Regards
>> >>>>>>>
>> >>>>>>> Freeman
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> Florent wrote:
>> >>>>>>>
>> >>>>>>>
>> >>>>>>>> If i use the following code to access to my web service, it
>> works
>> >>>>>>>> fine
>> >>>>>>>> :
>> >>>>>>>>
>> >>>>>>>> String endpoint =
>> >>>>>>>> "http://localhost:9080/PROTOServiceMixWeb/services/ProtoBean";;
>> >>>>>>>>
>> >>>>>>>> String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
>> >>>>>>>>                                                "<env:Envelope
>> >>>>>>>> xmlns:env=\"http://schemas.xmlsoap.org/soap/envelope/\";
>> >>>>>>>> " +
>> >>>>>>>>                               
>> "xmlns:tns=\"http://ejb.proto.mycompany.com\";>" +
>> >>>>>>>>                                "<env:Body>" +
>> >>>>>>>>                                "<tns:getProtoDTO>" +
>> >>>>>>>>
>> >>>>>>>> "<tns:getProtoDTORequest>0</tns:getProtoDTORequest>" +
>> >>>>>>>>                                "</tns:getProtoDTO>" +
>> >>>>>>>>                                                "</env:Body>" +
>> >>>>>>>>                                               
>> "</env:Envelope>";
>> >>>>>>>>
>> >>>>>>>>                MessageFactory mf = MessageFactory.newInstance();
>> >>>>>>>>                SOAPMessage smsg = mf.createMessage(new
>> MimeHeaders(), new
>> >>>>>>>> ByteArrayInputStream(xml.getBytes()));
>> >>>>>>>>
>> >>>>>>>>                SOAPConnection conn =
>> >>>>>>>> SOAPConnectionFactory.newInstance().createConnection();
>> >>>>>>>>         SOAPMessage response = conn.call(smsg, url);
>> >>>>>>>>
>> >>>>>>>>         SOAPEnvelope env = response.getSOAPPart().getEnvelope();
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> If i try to call the fellowing url :
>> >>>>>>>> http://localhost:8092/ProtoBeanService/
>> >>>>>>>> i get an error : No SOAPAction header (Application server
>> log)...
>> >>>>>>>> That's
>> >>>>>>>> why
>> >>>>>>>> i was wondering about the soap version.
>> >>>>>>>>
>> >>>>>>>> I get the following error in servicemix log :
>> >>>>>>>>
>> >>>>>>>> javax.jbi.messaging.MessagingException: Out not supported
>> >>>>>>>>         at
>> >>>>>>>>
>> org.apache.servicemix.jbi.messaging.MessageExchangeImpl.setMessage(MessageExchangeImpl.java:357)
>> >>>>>>>>         at
>> >>>>>>>>
>> org.apache.servicemix.cxfbc.CxfBcProviderMessageObserver.onMessage(CxfBcProviderMessageObserver.java:125)
>> >>>>>>>>         at
>> >>>>>>>>
>> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1932)
>> >>>>>>>>         at
>> >>>>>>>>
>> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1790)
>> >>>>>>>>         at
>> >>>>>>>>
>> org.apache.servicemix.cxfbc.CxfBcProvider.process(CxfBcProvider.java:166)
>> >>>>>>>>         at
>> >>>>>>>>
>> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:538)
>> >>>>>>>>         at
>> >>>>>>>>
>> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:490)
>> >>>>>>>>         at
>> >>>>>>>>
>> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
>> >>>>>>>>         at
>> >>>>>>>>
>> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:610)
>> >>>>>>>>         at
>> >>>>>>>>
>> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:170)
>> >>>>>>>>         at
>> >>>>>>>>
>> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:167)
>> >>>>>>>>         at
>> >>>>>>>>
>> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
>> >>>>>>>>         at
>> >>>>>>>>
>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
>> >>>>>>>>         at
>> >>>>>>>>
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
>> >>>>>>>>         at java.lang.Thread.run(Thread.java:595)
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> Any idea?
>> >>>>>>>>
>> >>>>>>>> Thank you in advance,
>> >>>>>>>> Florent.
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> Freeman Fang wrote:
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>> Hi,
>> >>>>>>>>>
>> >>>>>>>>> You needn't specify it in cxf bc endpint configuration. Cxf bc
>> >>>>>>>>> should
>> >>>>>>>>> support both of it by default.
>> >>>>>>>>> Cxf bc will parse the wsdl you provided and create service
>> model
>> >>>>>>>>> accordingly, extract soap version from your wsdl binding part.
>> >>>>>>>>>
>> >>>>>>>>> Best Regards
>> >>>>>>>>>
>> >>>>>>>>> Freeman
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>> Florent wrote:
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>>> Hello,
>> >>>>>>>>>>
>> >>>>>>>>>> I'm trying to expose a third party webservice to the bus,
>> using
>> >>>>>>>>>> cxf.
>> >>>>>>>>>>
>> >>>>>>>>>> I'd like to know if i can set the soap version. For example,
>> when
>> >>>>>>>>>> i
>> >>>>>>>>>> was
>> >>>>>>>>>> using service-http, there was a SoapVersion attribute, but i
>> >>>>>>>>>> didn't
>> >>>>>>>>>> find
>> >>>>>>>>>> one
>> >>>>>>>>>> for the servicemix-cxf-bc-3.2-schema.
>> >>>>>>>>>>
>> >>>>>>>>>> Is soap 1.1 or 1.2 used?
>> >>>>>>>>>>
>> >>>>>>>>>> Here is my xbean.xml :
>> >>>>>>>>>>
>> >>>>>>>>>> <?xml version="1.0" encoding="UTF-8"?>
>> >>>>>>>>>> <beans xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0";
>> >>>>>>>>>>        xmlns:ns1="http://ejb.proto.mycompany.com";>
>> >>>>>>>>>>
>> >>>>>>>>>>       <cxfbc:consumer
>> >>>>>>>>>>                         wsdl="classpath:ProtoBean.wsdl"
>> >>>>>>>>>>                         endpoint="ProtoBeanPort"
>> >>>>>>>>>>                         targetEndpoint="ProtoBean"
>> >>>>>>>>>>                         targetService="ns1:ProtoBeanService"
>> >>>>>>>>>>                         targetInterface="ns1:ProtoBean"
>> >>>>>>>>>>                         >
>> >>>>>>>>>>       </cxfbc:consumer>
>> >>>>>>>>>>
>> >>>>>>>>>>       <cxfbc:provider
>> >>>>>>>>>>                         wsdl="classpath:ProtoBean.wsdl"
>> >>>>>>>>>>
>> >>>>>>>>>>
>> locationURI="http://localhost:9080/PROTOServiceMixWeb/services/ProtoBean";
>> >>>>>>>>>>                         service="ns1:ProtoBeanService"
>> >>>>>>>>>>                         endpoint="ProtoBean"
>> >>>>>>>>>>                         interfaceName="ns1:ProtoBean"
>> >>>>>>>>>>                         >
>> >>>>>>>>>>       </cxfbc:provider>
>> >>>>>>>>>>
>> >>>>>>>>>> </beans>
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>
>> >>>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>
>> >>>>
>> >>>>
>> >>>
>> >>>
>> >>
>> >>
>> >
>> >
>>
>> --
>> View this message in context:
>> http://www.nabble.com/servicemix-cxf-bc---soapVersion-attribute-tf4860627s12049.html#a13969473
>>
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
>>
> 
> 

-- 
View this message in context: 
http://www.nabble.com/servicemix-cxf-bc---soapVersion-attribute-tf4860627s12049.html#a13970889
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to