In-only http soap-producer does not work if an in-only consumer receives a
message it sends
-------------------------------------------------------------------------------------------
Key: SMX4-427
URL: https://issues.apache.org/activemq/browse/SMX4-427
Project: ServiceMix 4
Issue Type: Bug
Affects Versions: 4.1.0
Reporter: Sergey Beryozkin
Priority: Minor
Fix For: 4.0-m1
In-only http soap-producer attempts to read a response message so it fails if
an in-only consumer receives the request on other end. Replacing it with an
in-only cxfbc:producer fixes the issue, thus I'm marking this issue as a minor
one given that generally cfxbc:producer is a better SOAP provider
Note that the wsdl used by the http soap-producer has only input parts in
portType/binding.
Here's some log.
18:02:09,087 | DEBUG | 32437...@qtp1-1 | PhaseInterceptorChain |
.soap.core.PhaseInterceptorChain 96 | Invoking handleFault on interceptor
org.apache.servicemix.soap.interceptors.xml.StaxInInterceptor
18:02:09,087 | DEBUG | 32437...@qtp1-1 | PhaseInterceptorChain |
.soap.core.PhaseInterceptorChain 96 | Invoking handleFault on interceptor
org.apache.servicemix.soap.interceptors.mime.AttachmentsInInterceptor
18:02:09,087 | DEBUG | 32437...@qtp1-1 | NMR |
.servicemix.nmr.core.ChannelImpl 274 | Channel
org.apache.servicemix.nmr.core.channeli...@833d35 dispatching exchange: [
id: 49757c3d-fae3-45f4-be58-e6ddfb484702
mep: InOnly
status: Error
role: Provider
target:
PropertyMatchingReference[{SERVICE_NAME={http://servicemix.apache.org/samples/wsdl-first}PersonService,
ENDPOINT_NAME=soap2}]
operation: {http://servicemix.apache.org/samples/wsdl-first}GetPerson
properties: [
javax.jbi.ServiceEndpoint =
org.apache.servicemix.jbi.runtime.impl.serviceendpointi...@f22456
javax.jbi.messaging.MessageExchange =
org.apache.servicemix.jbi.runtime.impl.inonlyi...@12f95de
javax.jbi.messaging.sendSync = <null>
javax.jbi.servicedesc.ServiceEndpoint =
org.apache.servicemix.jbi.runtime.impl.endpointi...@1a83597
javax.jbi.ServiceName =
{http://servicemix.apache.org/samples/wsdl-first}PersonService
org.apache.servicemix.correlationId = 49757c3d-fae3-45f4-be58-e6ddfb484702
javax.jbi.transaction.jta = <null>
org.apache.servicemix.soap.api.Message = <null>
javax.jbi.InterfaceName = <null>
org.apache.servicemix.senderEndpoint =
{http://servicemix.apache.org/samples/wsdl-first}PersonService:soap
]
In: [
content: org.apache.servicemix.soap.util.stax.staxsou...@c22b28
properties: [
javax.jbi.messaging.protocol.headers = {User-Agent=Mozilla/5.0 (Windows;
U; Windows NT 5.1; en-US; rv:1.9.0.15) Gecko/2009101601 Firefox/3.0.15 (.NET
CLR 3.5.30729), Host=localhost:8192, Accept-Encoding=gzip,deflate,
Accept-Language=en-us,en;q=0.5, Accept-Charset=ISO-8859-1,utf-8;q=0.7,*;q=0.7,
Pragma=no-cache, Content-Type=application/xml; charset=UTF-8,
REQUEST_METHOD=POST, Cache-Control=no-cache,
Accept=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8,
REQUEST_URI=http://localhost:8192/PersonService/, Content-Length=316,
Connection=keep-alive, Keep-Alive=300, CONTENT_TYPE=application/xml;
charset=UTF-8}
]
]
error: [
org.apache.servicemix.soap.api.Fault: com.ctc.wstx.exc.WstxIOException:
Stream closed
at
org.apache.servicemix.soap.util.stax.StaxUtil.createReader(StaxUtil.java:59)
at
org.apache.servicemix.soap.interceptors.xml.StaxInInterceptor.handleMessage(StaxInInterceptor.java:55)
at
org.apache.servicemix.soap.core.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:85)
at
org.apache.servicemix.http.endpoints.HttpSoapProviderMarshaler.handleResponse(HttpSoapProviderMarshaler.java:135)
at
org.apache.servicemix.http.endpoints.HttpProviderEndpoint.handle(HttpProviderEndpoint.java:249)
at
org.apache.servicemix.http.endpoints.HttpProviderEndpoint$Exchange.onResponseComplete(HttpProviderEndpoint.java:356)
at
org.mortbay.jetty.client.HttpExchange$Listener.onResponseComplete(HttpExchange.java:584)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.