use of org.apache.axiom.soap.SOAPFactory in project webservices-axiom by apache.
the class ConvertLLOMToDOOMTest method testAddChild.
public void testAddChild() {
SOAPFactory fac = OMAbstractFactory.getMetaFactory(OMAbstractFactory.FEATURE_DOM).getSOAP11Factory();
SOAPEnvelope env = fac.getDefaultEnvelope();
fac.createOMElement(new QName("http://test.org", "Test"), env.getBody());
env.build();
SOAPFactory llomFac = OMAbstractFactory.getMetaFactory(OMAbstractFactory.FEATURE_DOM).getSOAP11Factory();
OMElement elem = llomFac.createOMElement("newDomElement", null);
OMElement firstElement = env.getBody().getFirstElement();
firstElement.addChild(elem);
assertTrue("New DOM child missing", env.toString().indexOf("newDomElement") > 0);
}
use of org.apache.axiom.soap.SOAPFactory in project webservices-axiom by apache.
the class MTOMLogSample method test.
// END SNIPPET: variant2
public void test() throws XMLStreamException {
SOAPFactory factory = OMAbstractFactory.getSOAP11Factory();
SOAPEnvelope env = factory.createDefaultSOAPMessage().getSOAPEnvelope();
OMElement element = factory.createOMElement(new QName("urn:testService", "invokeMtom", "ns"), env.getBody());
element.addChild(factory.createOMText(new DataHandler("test", "text/xml"), true));
logMessage(env);
}
use of org.apache.axiom.soap.SOAPFactory in project webservices-axiom by apache.
the class SOAPElementTypeAdapterFactory method createAdapters.
@Override
public void createAdapters(SOAPElementType type, Adapters adapters) {
if (type == SOAPElementType.ENVELOPE) {
adapters.add(new SOAPElementTypeAdapter(SOAPEnvelope.class, null, null) {
@Override
public OMElement create(SOAPFactory factory) {
return factory.createSOAPEnvelope();
}
@Override
public OMElement create(SOAPFactory factory, SOAPElementType parentType, OMElement parent) {
throw new UnsupportedOperationException();
}
});
} else if (type == SOAPElementType.HEADER) {
Getter getter = new Getter() {
@Override
public OMElement invoke(OMElement parent) {
return ((SOAPEnvelope) parent).getHeader();
}
};
adapters.add(new SOAPElementTypeAdapter(SOAPHeader.class, getter, null) {
@Override
public OMElement create(SOAPFactory factory) {
return factory.createSOAPHeader();
}
@Override
public OMElement create(SOAPFactory factory, SOAPElementType parentType, OMElement parent) {
return factory.createSOAPHeader((SOAPEnvelope) parent);
}
});
} else if (type == SOAPElementType.BODY) {
Getter getter = new Getter() {
@Override
public OMElement invoke(OMElement parent) {
return ((SOAPEnvelope) parent).getBody();
}
};
adapters.add(new SOAPElementTypeAdapter(SOAPBody.class, getter, null) {
@Override
public OMElement create(SOAPFactory factory) {
return factory.createSOAPBody();
}
@Override
public OMElement create(SOAPFactory factory, SOAPElementType parentType, OMElement parent) {
return factory.createSOAPBody((SOAPEnvelope) parent);
}
});
} else if (type == SOAPElementType.FAULT) {
Getter getter = new Getter() {
@Override
public OMElement invoke(OMElement parent) {
return ((SOAPBody) parent).getFault();
}
};
adapters.add(new SOAPElementTypeAdapter(SOAPFault.class, getter, null) {
@Override
public OMElement create(SOAPFactory factory) {
return factory.createSOAPFault();
}
@Override
public OMElement create(SOAPFactory factory, SOAPElementType parentType, OMElement parent) {
return factory.createSOAPFault((SOAPBody) parent);
}
});
} else if (type == SOAPFaultChild.CODE) {
Getter getter = new Getter() {
@Override
public OMElement invoke(OMElement parent) {
return ((SOAPFault) parent).getCode();
}
};
Setter setter = new Setter() {
@Override
public void invoke(OMElement parent, OMElement child) {
((SOAPFault) parent).setCode((SOAPFaultCode) child);
}
};
adapters.add(new SOAPElementTypeAdapter(SOAPFaultCode.class, getter, setter) {
@Override
public OMElement create(SOAPFactory factory) {
return factory.createSOAPFaultCode();
}
@Override
public OMElement create(SOAPFactory factory, SOAPElementType parentType, OMElement parent) {
return factory.createSOAPFaultCode((SOAPFault) parent);
}
});
} else if (type == SOAPElementType.VALUE) {
Getter getter = new Getter() {
@Override
public OMElement invoke(OMElement parent) {
return ((SOAPFaultClassifier) parent).getValue();
}
};
Setter setter = new Setter() {
@Override
public void invoke(OMElement parent, OMElement child) {
((SOAPFaultClassifier) parent).setValue((SOAPFaultValue) child);
}
};
adapters.add(new SOAPElementTypeAdapter(SOAPFaultValue.class, getter, setter) {
@Override
public OMElement create(SOAPFactory factory) {
return factory.createSOAPFaultValue();
}
@Override
public OMElement create(SOAPFactory factory, SOAPElementType parentType, OMElement parent) {
if (parentType == SOAPFaultChild.CODE) {
return factory.createSOAPFaultValue((SOAPFaultCode) parent);
} else {
return factory.createSOAPFaultValue((SOAPFaultSubCode) parent);
}
}
});
} else if (type == SOAPElementType.SUB_CODE) {
Getter getter = new Getter() {
@Override
public OMElement invoke(OMElement parent) {
return ((SOAPFaultClassifier) parent).getSubCode();
}
};
Setter setter = new Setter() {
@Override
public void invoke(OMElement parent, OMElement child) {
((SOAPFaultClassifier) parent).setSubCode((SOAPFaultSubCode) child);
}
};
adapters.add(new SOAPElementTypeAdapter(SOAPFaultSubCode.class, getter, setter) {
@Override
public OMElement create(SOAPFactory factory) {
return factory.createSOAPFaultSubCode();
}
@Override
public OMElement create(SOAPFactory factory, SOAPElementType parentType, OMElement parent) {
if (parentType == SOAPFaultChild.CODE) {
return factory.createSOAPFaultSubCode((SOAPFaultCode) parent);
} else {
return factory.createSOAPFaultSubCode((SOAPFaultSubCode) parent);
}
}
});
} else if (type == SOAPFaultChild.REASON) {
Getter getter = new Getter() {
@Override
public OMElement invoke(OMElement parent) {
return ((SOAPFault) parent).getReason();
}
};
Setter setter = new Setter() {
@Override
public void invoke(OMElement parent, OMElement child) {
((SOAPFault) parent).setReason((SOAPFaultReason) child);
}
};
adapters.add(new SOAPElementTypeAdapter(SOAPFaultReason.class, getter, setter) {
@Override
public OMElement create(SOAPFactory factory) {
return factory.createSOAPFaultReason();
}
@Override
public OMElement create(SOAPFactory factory, SOAPElementType parentType, OMElement parent) {
return factory.createSOAPFaultReason((SOAPFault) parent);
}
});
} else if (type == SOAPElementType.TEXT) {
adapters.add(new SOAPElementTypeAdapter(SOAPFaultText.class, null, null) {
@Override
public OMElement create(SOAPFactory factory) {
return factory.createSOAPFaultText();
}
@Override
public OMElement create(SOAPFactory factory, SOAPElementType parentType, OMElement parent) {
return factory.createSOAPFaultText((SOAPFaultReason) parent);
}
});
} else if (type == SOAPFaultChild.NODE) {
Getter getter = new Getter() {
@Override
public OMElement invoke(OMElement parent) {
return ((SOAPFault) parent).getNode();
}
};
Setter setter = new Setter() {
@Override
public void invoke(OMElement parent, OMElement child) {
((SOAPFault) parent).setNode((SOAPFaultNode) child);
}
};
adapters.add(new SOAPElementTypeAdapter(SOAPFaultNode.class, getter, setter) {
@Override
public OMElement create(SOAPFactory factory) {
return factory.createSOAPFaultNode();
}
@Override
public OMElement create(SOAPFactory factory, SOAPElementType parentType, OMElement parent) {
return factory.createSOAPFaultNode((SOAPFault) parent);
}
});
} else if (type == SOAPFaultChild.ROLE) {
Getter getter = new Getter() {
@Override
public OMElement invoke(OMElement parent) {
return ((SOAPFault) parent).getRole();
}
};
Setter setter = new Setter() {
@Override
public void invoke(OMElement parent, OMElement child) {
((SOAPFault) parent).setRole((SOAPFaultRole) child);
}
};
adapters.add(new SOAPElementTypeAdapter(SOAPFaultRole.class, getter, setter) {
@Override
public OMElement create(SOAPFactory factory) {
return factory.createSOAPFaultRole();
}
@Override
public OMElement create(SOAPFactory factory, SOAPElementType parentType, OMElement parent) {
return factory.createSOAPFaultRole((SOAPFault) parent);
}
});
} else if (type == SOAPFaultChild.DETAIL) {
Getter getter = new Getter() {
@Override
public OMElement invoke(OMElement parent) {
return ((SOAPFault) parent).getDetail();
}
};
Setter setter = new Setter() {
@Override
public void invoke(OMElement parent, OMElement child) {
((SOAPFault) parent).setDetail((SOAPFaultDetail) child);
}
};
adapters.add(new SOAPElementTypeAdapter(SOAPFaultDetail.class, getter, setter) {
@Override
public OMElement create(SOAPFactory factory) {
return factory.createSOAPFaultDetail();
}
@Override
public OMElement create(SOAPFactory factory, SOAPElementType parentType, OMElement parent) {
return factory.createSOAPFaultDetail((SOAPFault) parent);
}
});
}
}
use of org.apache.axiom.soap.SOAPFactory in project wso2-synapse by wso2.
the class LoadbalanceFailoverClient method buildSoapEnvelope.
private SOAPEnvelope buildSoapEnvelope(String clientID, String value) {
SOAPFactory soapFactory = OMAbstractFactory.getSOAP12Factory();
SOAPEnvelope envelope = soapFactory.createSOAPEnvelope();
SOAPHeader header = soapFactory.createSOAPHeader();
envelope.addChild(header);
OMNamespace synNamespace = soapFactory.createOMNamespace("http://ws.apache.org/ns/synapse", "syn");
OMElement clientIDElement = soapFactory.createOMElement("ClientID", synNamespace);
clientIDElement.setText(clientID);
header.addChild(clientIDElement);
SOAPBody body = soapFactory.createSOAPBody();
envelope.addChild(body);
OMElement valueElement = soapFactory.createOMElement("Value", null);
valueElement.setText(value);
body.addChild(valueElement);
return envelope;
}
use of org.apache.axiom.soap.SOAPFactory in project wso2-synapse by wso2.
the class MTOMSwAClient method sendUsingSwA.
public static MessageContext sendUsingSwA(String fileName, String targetEPR) throws IOException {
Options options = new Options();
options.setTo(new EndpointReference(targetEPR));
options.setAction("urn:uploadFileUsingSwA");
options.setProperty(Constants.Configuration.ENABLE_SWA, Constants.VALUE_TRUE);
ServiceClient sender = createServiceClient();
sender.setOptions(options);
OperationClient mepClient = sender.createClient(ServiceClient.ANON_OUT_IN_OP);
MessageContext mc = new MessageContext();
System.out.println("Sending file : " + fileName + " as SwA");
FileDataSource fileDataSource = new FileDataSource(new File(fileName));
DataHandler dataHandler = new DataHandler(fileDataSource);
String attachmentID = mc.addAttachment(dataHandler);
SOAPFactory factory = OMAbstractFactory.getSOAP11Factory();
SOAPEnvelope env = factory.getDefaultEnvelope();
OMNamespace ns = factory.createOMNamespace("http://services.samples", "m0");
OMElement payload = factory.createOMElement("uploadFileUsingSwA", ns);
OMElement request = factory.createOMElement("request", ns);
OMElement imageId = factory.createOMElement("imageId", ns);
imageId.setText(attachmentID);
request.addChild(imageId);
payload.addChild(request);
env.getBody().addChild(payload);
mc.setEnvelope(env);
mepClient.addMessageContext(mc);
mepClient.execute(true);
MessageContext response = mepClient.getMessageContext(WSDLConstants.MESSAGE_LABEL_IN_VALUE);
SOAPBody body = response.getEnvelope().getBody();
String imageContentId = body.getFirstChildWithName(new QName("http://services.samples", "uploadFileUsingSwAResponse")).getFirstChildWithName(new QName("http://services.samples", "response")).getFirstChildWithName(new QName("http://services.samples", "imageId")).getText();
Attachments attachment = response.getAttachmentMap();
dataHandler = attachment.getDataHandler(imageContentId);
File tempFile = File.createTempFile("swa-", ".gif");
FileOutputStream fos = new FileOutputStream(tempFile);
dataHandler.writeTo(fos);
fos.flush();
fos.close();
System.out.println("Saved response to file : " + tempFile.getAbsolutePath());
return response;
}
Aggregations