In your configuration, the HTTP consumer will try to read the WSDL
exposed by the EIP wiretap.
For this endpoint to expose a WSDL, you need to set either its
wsdlResource or wsdlExchangeTarget properties so that it can expose a
WSDL.

On Mon, Sep 1, 2008 at 4:30 AM, Ward, Lyall <[EMAIL PROTECTED]> wrote:
> Gert,
>
> I have continued to try and find a solution to these problems.
> Attempting to solve the wsdl issue first. It appears the
> <http:endpoint/> provider is finding the service/endpoint in the wsdl,
> but the wsdl is still not returned through as it appears the problem is
> the wiretap and consumer components do not have the matching
> service/enpoint pairs. However my requirements allow me to have a single
> provider, but not a single consumer/wiretap so this is not workable,
> also with the 3 components attempting to be the same service/endpoint
> servicemix will not successfully deploy the the components.
>
> How should I be naming these components in order to have the wsdl able
> to be fetched from the consumer?
>
> Thanks,
> Lyall.
>
> This is what I am attempting to do showing the service/endpoint values
> for the components.
>
> All xbean files have this entry on their beans tag
> xmlns:svcns='http://www.webserviceX.NET'
>
> <http:endpoint service='svcns:ValidateUKAddress'
> endpoint='3700af92-6ef7-4a42-9d61-4d241515f715' role='consumer' .../>
>  |
> <eip:wire-tap service='svcns:wireTap'
> endpoint='3700af92-6ef7-4a42-9d61-4d241515f715'>
>  |
> <http:endpoint service='svcns:UKLocation' endpoint='UKLocationSoap'
> role='provider' .../>
>  |
> External service with following wsdl
> http://www.webservicex.com/uklocation.asmx?WSDL
>
> When attempting to fetch the wsdl file through the consumer I see the
> following in the debug trace
>
> ##################### START DEBUG
> DEBUG - ConsumerProcessor              - Receiving HTTP request: GET
> /ukLocation-3700af92-6ef7-4a42-9d61-4d241515f715/main.wsdl HTTP/1.1
> Host: bned50077171a.dhcp.bne.sap.corp:8192
> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-GB; rv:1.8.1.16)
> Gecko/20080702 Firefox/2.0.0.16
> Accept:
> text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plai
> n;q=0.8,image/png,*/*;q=0.5
> Accept-Language: en-gb,en;q=0.5
> Accept-Encoding: gzip,deflate
> Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
> Keep-Alive: 300
> Connection: keep-alive
> Cache-Control: max-age=0
>
>
> DEBUG - HttpComponent                  - Retrieving proxied endpoint
> definition
> DEBUG - EIPComponent                   - Querying service description
> for
> ServiceEndpoint[service={http://www.webserviceX.NET}wireTap,endpoint=370
> 0af92-6ef7-4a42-9d61-4d241515f715]
> DEBUG - HttpComponent                  - PortType for
> targetService/targetEndpoint could not be found
> ###################### END DEBUG
>
>
> -----Original Message-----
> From: Gert Vanthienen [mailto:[EMAIL PROTECTED]
> Sent: Friday, 22 August 2008 3:03 PM
> To: [email protected]
> Subject: [JUNK]Re: Soap action and wsdl forwarding.
>
> Lyall,
>
> If the information can not be retrieved from the WSDL, this usually
> means that there is a mismatch between the service/endpoint name and the
>
> service/port names in the wsdl.  The two should match for the
> http:endpoint to find what it needs.
>
> For the SOAPAction, could you try replacing your <http:endpoint/> with
> <http:soap-provider/> with a ServiceMix 3.2.3-SNAPSHOT (available at
> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicem
> ix/apache-servicemix/3.2.3-SNAPSHOT/).
> I have just yesterday committed a few fixes that might get this issue
> resolved.
>
> Regards,
>
> Gert
>
> Ward, Lyall wrote:
>> Hi,
>>
>> I am attempting to setup what appears to be a very simple web service
>> proxy using servicemix. I'm using servicemix version 3.2.2 standalone
>> (though eventually tomcat integration would be nice) on jvm
> 1.5.0_14_b03
>> on windows vista. The configuration I am attempting to use is using
>> consumer and provider binding component with a wiretap in the middle
>> sending a copy of the message to a metering engine.
>>
>> I have a configuration of these component that works for forwarding
> the
>> soap requests to the external service and causing the metering to be
>> executed. However there are 2 issues I've not been able to solve.
>>
>> I am unable to use the enpoint I created to provide the wsdl file of
> the
>> service, and I am unable to have the soapaction header from the
> original
>> request forwarded to the external service. I have worked around this
>> with a static definition of the soap action, but for services that
>> provide multiple methods this will not work and it is not desireable
> to
>> have a provider binding component for each method.
>>
>> When I deploy the component and also when I attempt to fetch the wsdl
> I
>> can see an http component attempting to access the wsdl (appears that
>> way to me at least) but with no success, the debug is as follows.
>>
>> Is there something in the defintion of the components I am missing? I
>> have a binding component and jsr181 service assembly also and the wsdl
>> generation and fetching automaticlly works in that case.
>>
>> Thanks in advance,
>> Lyall.
>>
>> ### on startup of the provier
>> DEBUG - HttpComponent                  - Port for service/endpoint
> could
>> not be found
>>
>> ### on request of the wsdl
>> DEBUG - ConsumerProcessor              - Receiving HTTP request: GET
>> /UKLocation/main.wsdl HTTP/1.1
>> Host: mymachine.network.com:8192
>> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-GB;
> rv:1.8.1.16)
>> Gecko/20080702 Firefox/2.0.0.16
>> Accept:
>>
> text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plai
>> n;q=0.8,image/png,*/*;q=0.5
>> Accept-Language: en-gb,en;q=0.5
>> Accept-Encoding: gzip,deflate
>> Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
>> Keep-Alive: 300
>> Connection: keep-alive
>>
>>
>> DEBUG - HttpComponent                  - Retrieving proxied endpoint
>> definition
>> DEBUG - EIPComponent                   - Querying service description
>> for
>>
> ServiceEndpoint[service={http://www.webserviceX.NET}wireTap,endpoint=end
>> point]
>> DEBUG - EIPComponent                   - No description found for
>> {http://www.webserviceX.NET}wireTap:endpoint
>> DEBUG - JettyContextManager            - Dispatching job:
>> [EMAIL PROTECTED],io=1,w=true,b=false|false]
>> DEBUG - JettyContextManager            - Dispatching job:
>> [EMAIL PROTECTED],io=1,w=true,b=false|false]
>>
>>
>> ### CONSUMER XBEAN.XML
>> <?xml version="1.0" encoding="UTF-8"?>
>> <beans xmlns:http="http://servicemix.apache.org/http/1.0";
>>        xmlns:ukl="http://www.webserviceX.NET";>
>>
>>   <http:endpoint service="ukl:UKLocationIn"
>>                  endpoint="soap"
>>                  targetService="ukl:wireTap"
>>                  targetEndpoint="endpoint"
>>                  locationURI="http://0.0.0.0:8192/UKLocation/";
>>                  defaultMep="http://www.w3.org/2004/08/wsdl/in-out";
>>                  role="consumer"
>>                  soap="true"
>>                  />
>> </beans>
>>
>> ### WIRE TAP XBEAN.XML
>> <?xml version="1.0" encoding="UTF-8"?>
>> <beans xmlns:eip="http://servicemix.apache.org/eip/1.0";
>>        xmlns:ukl="http://www.webserviceX.NET";>
>>
>> <eip:wire-tap service="ukl:wireTap" endpoint="endpoint">
>>   <eip:target>
>>     <eip:exchange-target service="ukl:UKLocation" endpoint="Soap"/>
>>   </eip:target>
>>   <eip:inListener>
>>     <eip:exchange-target service="ukl:events" endpoint="endpoint" />
>>   </eip:inListener>
>> </eip:wire-tap>
>>
>> </beans>
>>
>> ### PROVIDER XBEAN.XML
>> <?xml version="1.0" encoding="UTF-8"?>
>> <beans xmlns:http="http://servicemix.apache.org/http/1.0";
>>        xmlns:ukl="http://www.webserviceX.NET";>
>>   <http:endpoint service="ukl:UKLocation"
>>             endpoint="Soap"
>>             role="provider"
>>             soapAction="http://www.webserviceX.NET/ValidateUKAddress";
>>             locationURI="http://www.webservicex.com/uklocation.asmx";
>>             defaultMep="http://www.w3.org/2004/08/wsdl/in-out";
>>             soap="true"
>>               soapVersion="1.1"
>>
>> wsdlResource="http://www.webservicex.net/uklocation.asmx?wsdl";
>>               />
>> </beans>
>>
>>
>>
>
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/

Reply via email to