use of javax.wsdl.Part in project cxf by apache.
the class WSDLDefinitionBuilderTest method testBuildImportedWSDL.
@Test
public void testBuildImportedWSDL() throws Exception {
String wsdlUrl = getClass().getResource("hello_world_services.wsdl").toString();
WSDLDefinitionBuilder builder = new WSDLDefinitionBuilder(BusFactory.getDefaultBus());
Definition def = builder.build(wsdlUrl);
assertNotNull(def);
Map<?, ?> services = def.getServices();
assertNotNull(services);
assertEquals(1, services.size());
String serviceQName = "http://apache.org/hello_world/services";
Service service = (Service) services.get(new QName(serviceQName, "SOAPService"));
assertNotNull(service);
Map<?, ?> ports = service.getPorts();
assertNotNull(ports);
assertEquals(1, ports.size());
Port port = service.getPort("SoapPort");
assertNotNull(port);
Binding binding = port.getBinding();
assertNotNull(binding);
QName bindingQName = new QName("http://apache.org/hello_world/bindings", "SOAPBinding");
assertEquals(bindingQName, binding.getQName());
PortType portType = binding.getPortType();
assertNotNull(portType);
QName portTypeQName = new QName("http://apache.org/hello_world", "Greeter");
assertEquals(portTypeQName, portType.getQName());
Operation op1 = portType.getOperation("sayHi", "sayHiRequest", "sayHiResponse");
assertNotNull(op1);
QName messageQName = new QName("http://apache.org/hello_world/messages", "sayHiRequest");
assertEquals(messageQName, op1.getInput().getMessage().getQName());
Part part = op1.getInput().getMessage().getPart("in");
assertNotNull(part);
assertEquals(new QName("http://apache.org/hello_world/types", "sayHi"), part.getElementName());
}
use of javax.wsdl.Part in project tesb-studio-se by Talend.
the class PublishMetadataRunnable method getMessageParts.
private static List<QName> getMessageParts(Message msg) {
List<QName> result = new ArrayList<QName>();
@SuppressWarnings("unchecked") Collection<Part> values = msg.getParts().values();
if (values == null || values.isEmpty()) {
return result;
}
Iterator<Part> iterator = values.iterator();
while (iterator.hasNext()) {
Part part = iterator.next();
if (part.getElementName() != null) {
result.add(part.getElementName());
} else if (part.getTypeName() != null) {
result.add(part.getTypeName());
}
}
return result;
}
use of javax.wsdl.Part in project pentaho-kettle by pentaho.
the class WsdlOpFaultList method getFault.
/**
* Create a WsdlOpFault from the Fault.
*
* @param fault
* Fault to process.
* @return WsdlOpFault Result of processing.
*/
@SuppressWarnings("unchecked")
private WsdlOpFault getFault(Fault fault) throws KettleStepException {
Message m = fault.getMessage();
// a fault should only have one message part.
Map<?, Part> partMap = m.getParts();
if (partMap.size() != 1) {
throw new IllegalArgumentException("Invalid part count for fault!!");
}
Part faultPart = partMap.values().iterator().next();
boolean complexType = false;
// type of fault is specified either in Part's type or element attribute.
QName type = faultPart.getTypeName();
if (type == null) {
type = faultPart.getElementName();
Element schemaElement = _wsdlTypes.findNamedElement(type);
type = _wsdlTypes.getTypeQName(schemaElement.getAttribute("type"));
complexType = true;
}
return new WsdlOpFault(fault.getName(), type, complexType, _wsdlTypes);
}
Aggregations