Search in sources :

Example 31 with Part

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);
}
Also used : Message(javax.wsdl.Message) Part(javax.wsdl.Part) QName(javax.xml.namespace.QName) Element(org.w3c.dom.Element)

Example 32 with Part

use of javax.wsdl.Part in project cxf by apache.

the class ServiceWSDLBuilder method buildMessage.

protected void buildMessage(Message message, AbstractMessageContainer messageContainer, final Definition def) {
    addDocumentation(message, messageContainer.getMessageDocumentation());
    message.setQName(messageContainer.getName());
    message.setUndefined(false);
    def.addMessage(message);
    List<MessagePartInfo> messageParts = messageContainer.getMessageParts();
    Part messagePart = null;
    for (MessagePartInfo messagePartInfo : messageParts) {
        messagePart = def.createPart();
        messagePart.setName(messagePartInfo.getName().getLocalPart());
        if (messagePartInfo.isElement()) {
            messagePart.setElementName(messagePartInfo.getElementQName());
            addNamespace(messagePartInfo.getElementQName().getNamespaceURI(), def);
        } else if (messagePartInfo.getTypeQName() != null) {
            messagePart.setTypeName(messagePartInfo.getTypeQName());
            addNamespace(messagePartInfo.getTypeQName().getNamespaceURI(), def);
        }
        message.addPart(messagePart);
    }
}
Also used : Part(javax.wsdl.Part) MessagePartInfo(org.apache.cxf.service.model.MessagePartInfo)

Example 33 with Part

use of javax.wsdl.Part in project cxf by apache.

the class ServiceWSDLBuilderTest method testNoBodyParts.

@Test
public void testNoBodyParts() throws Exception {
    setupWSDL(NO_BODY_PARTS_WSDL_PATH);
    QName messageName = new QName("urn:org:apache:cxf:no_body_parts/wsdl", "operation1Request");
    Message message = newDef.getMessage(messageName);
    Part part = message.getPart("mimeAttachment");
    assertNotNull(part.getTypeName());
}
Also used : Message(javax.wsdl.Message) QName(javax.xml.namespace.QName) Part(javax.wsdl.Part) Test(org.junit.Test)

Example 34 with Part

use of javax.wsdl.Part in project cxf by apache.

the class WSDLHelper method getOutMessageParts.

public List<Part> getOutMessageParts(Operation operation) {
    Output output = operation.getOutput();
    List<Part> partsList = new ArrayList<>();
    if (output != null && output.getMessage() != null) {
        Collection<Part> parts = CastUtils.cast(output.getMessage().getParts().values());
        for (Part p : parts) {
            partsList.add(p);
        }
    }
    return partsList;
}
Also used : Part(javax.wsdl.Part) Output(javax.wsdl.Output) ArrayList(java.util.ArrayList)

Example 35 with Part

use of javax.wsdl.Part in project cxf by apache.

the class WSDLHelper method getInMessageParts.

public List<Part> getInMessageParts(Operation operation) {
    Input input = operation.getInput();
    List<Part> partsList = new ArrayList<>();
    if (input != null && input.getMessage() != null) {
        Collection<Part> parts = CastUtils.cast(input.getMessage().getParts().values());
        for (Part p : parts) {
            partsList.add(p);
        }
    }
    return partsList;
}
Also used : Input(javax.wsdl.Input) Part(javax.wsdl.Part) ArrayList(java.util.ArrayList)

Aggregations

Part (javax.wsdl.Part)49 QName (javax.xml.namespace.QName)30 Message (javax.wsdl.Message)21 Operation (javax.wsdl.Operation)11 BindingOperation (javax.wsdl.BindingOperation)9 Input (javax.wsdl.Input)9 Output (javax.wsdl.Output)7 OMElement (org.apache.axiom.om.OMElement)7 Element (org.w3c.dom.Element)7 ArrayList (java.util.ArrayList)6 Binding (javax.wsdl.Binding)6 OpenEJBException (org.apache.openejb.OpenEJBException)6 XmlSchemaElement (org.apache.ws.commons.schema.XmlSchemaElement)6 Fault (javax.wsdl.Fault)5 Port (javax.wsdl.Port)5 Service (javax.wsdl.Service)5 MIMEPart (javax.wsdl.extensions.mime.MIMEPart)5 List (java.util.List)4 BindingInput (javax.wsdl.BindingInput)4 PortType (javax.wsdl.PortType)4