Hi,
I want to use the NEW http consumer endpoint (<http:consumer../>) in order
to attach a marshaller.
My problem is that i see that the exchange is identified as a soap request,
hence it is wraped in "<env:" envelope & body tags in addition to it's
actual wrapper which is via soapenv: tags.
This causes an exception.
I debugged it & found out that if i convert the following boolean to false
everything is working without this <env> wrapper.
public class SoapMarshaler {
...
protected boolean soap = true;
...
public boolean isSoap() {
return soap;
}
}
This is called from SoapWriter class:
if (marshaler.isSoap()) {
writeSoapEnvelope(writer);
}
& indeed writeSoapEnvelope does the following wrapper:
public void writeSoapEnvelope(XMLStreamWriter writer) throws Exception {
QName envelope = getEnvelopeName();
String soapUri = envelope.getNamespaceURI();
String soapPrefix = envelope.getPrefix();
writer.setPrefix(soapPrefix, soapUri);
writer.writeStartElement(soapPrefix, SoapMarshaler.ENVELOPE,
soapUri);
My question is:
How do i control the exchange from the new http consumer so it won't be
recognized as soap or will not be wrapped as described? I know the http
soap-consumer endpoint wrapps the exchange with jbi & you can control it via
the useJbiWrapper attribute in the xbean. Is there a solotion for this also?
Here is my xbean:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:http="http://servicemix.apache.org/http/1.0"
xmlns:con="http://service.app.esb.abc.liav.com"
xmlns:abc="http://abc">
<http:consumer service="con:PublicForecastWeatherService"
endpoint="PublicForecastWeather"
locationURI="http://localhost:8192/abc/services/internal/forecastWeather?in-out"
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>
Thanks in advance,
Liav.
--
View this message in context:
http://www.nabble.com/Http-consumer-end-point-question-tp21747567p21747567.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.