Anyone..?

Liav Ezer wrote:
> 
> Hi,
> 
> I have a working set of components:
>    1 Http end-point (role=consumer)
>    1 Http end-point (role=provider)
>    1 Camel SE
> 
> Since i want to plant logic to my consumed exchanged - i added a
> Marshaller & therfore replaced the current consumer with a new one.
> (Refer to http://servicemix.apache.org/servicemix-http-new-endpoints.html
> for the new http end-points)
> 
> Here is my new consumer's xbean:
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns:http="http://servicemix.apache.org/http/1.0"; 
>        xmlns:con="http://con"; 
>        xmlns:abc="http://abc";>
>   <http:consumer service="con:PublicForecastWeatherService"
>                  endpoint="PublicForecastWeather"  
>                 
> locationURI="http://localhost:8192/abc/services/internal/forecastWeather";
>                  defaultMep="http://www.w3.org/2004/08/wsdl/in-out";
>                  targetService="abc:abcInternalService"
>                  marshaler="#marshaler" /> 
>       <bean id="marshaler" class="org.apache.servicemix.jbi.HTTPMarshaler"
> />
> </beans>
> 
> My Problem:
> I used a sniffer to intercept my client request to this consumer end-point
> & here it is:
> client request:
> <?xml version='1.0' encoding='UTF-8' ?>
> <soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
>                   xmlns:xsd="http://www.w3.org/2001/XMLSchema";
>                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
>     <soapenv:Body>
>         <getForcastPerLocation
> xmlns="http://service.app.esb.abc.liav.com";>
>             <location>NYC</location>
>         </getForcastPerLocation>
>     </soapenv:Body>
> </soapenv:Envelope>
> 
> & i also intercepted the exchange from the new consumer to the ESB:
> Consumer request
> <?xml version='1.0' encoding='UTF-8' ?>
> <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/";>
>       <env:Body>
>               <soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
>                                 xmlns:xsd="http://www.w3.org/2001/XMLSchema";
>                                 
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
>                   <soapenv:Body>
>                       <getForcastPerLocation
> xmlns="http://service.app.esb.abc.liav.com";>
>                           <location>NYC</location>
>                       </getForcastPerLocation>
>                   </soapenv:Body>
>               </soapenv:Envelope>
>       </env:Envelope>
> </env:Body>
> 
> You can see that the new component wraps this soap request with additional
> <env> Envelope & Body tags while the old consumer didn't (i checked it's
> request as well)
> 
> My Questions:
> 1. Why does the exchange being wrapped like that using the new end-points?
> 2. If this is standard, how can i normelize my message to fit an old type
> provider?
> 3. Do i need to convert my old provider to be from the new kind as well?
> 4. Can you suggest a way to use the old http end-points with an atached
> Marshaller or other way to manipulate the exchange object on the consumer
> stage?
> 
> Thanks in advance,
> Liav.
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Http-consumer-BC-is-wrapping-the-exchange-with-%3Cenv%3E-tags-tp21688868p21711243.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to