Service service = Service.create(QNAME_SERVICE);
service.addPort(QNAME_PORT, SOAPBinding.SOAP11HTTP_BINDING, URL_ENDPOINT_MTOMTHRESHOLD);
Dispatch<Object> dispatch = service.createDispatch(QNAME_PORT, jbc, Mode.PAYLOAD, mtom21);
List cids = null;
SendImageResponse response = null;
try {
JAXBAttachmentUnmarshallerMonitor.setMonitoring(true);
response = (SendImageResponse) dispatch.invoke(request);
// The cids are collected in the monitor. We will check
// this to make sure the response mtom is not inlined
cids = JAXBAttachmentUnmarshallerMonitor.getBlobCIDs();
} finally {
JAXBAttachmentUnmarshallerMonitor.setMonitoring(false);
}
assertNotNull(response);
assertNotNull(response.getOutput().getImageData());
//There shold be no cid as attachment should be inlined.
int numCIDs = (cids == null) ? 0 : cids.size();
assertTrue("Expected one attachment inlined:" + numCIDs, numCIDs == 0);
}