Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
1.7.8
-
None
-
None
Description
We are just about to upgrade our axis client from v1.6.2 to v1.7.8 ,but we get
<<org.apache.axis2.AxisFault: A message with content type application/xop+xml can only appear in a MIME multipart message
at org.apache.axis2.builder.MTOMBuilder.processDocument(MTOMBuilder.java:40)
at org.apache.axis2.transport.TransportUtils.createDocumentElement(TransportUtils.java:203)
at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:144)
at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:107)
at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:66)
at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:347)>>
The third party server side is unchanged.
MTOM is not globally activated on the client-side, but we use
options.setProperty(
org.apache.axis2.Constants.Configuration.ENABLE_MTOM,
org.apache.axis2.Constants.VALUE_TRUE);
With 2-1.6.2. this was always set.
The server offers multiple stubs and even on stubs that do not need MTOM if omit setting ENABLE_MTOM, this happens.
Adding:
myConfigContext.getAxisConfiguration().addParameter(org.apache.axis2.Constants.Configuration.USE_DEFAULT_FALLBACK_BUILDER, "true");
doesn't help either.
Please document in
MTOMBuilder.processDocument(InputStream inputStream, String contentType, MessageContext messageContext) throws AxisFault
that always throws this exception, how this can be avoided to ensure backward compatibility