Package org.wso2.carbon.bpel.ode.integration

Examples of org.wso2.carbon.bpel.ode.integration.BPELFault


            for (Node headerNode : messageFromOde.getHeaderParts().values()) {
                if (headerNode.getNodeType() == Node.ELEMENT_NODE) {
                    addSOAPHeaderBock(soapHeader, headerNode, soapFactory);
                } else {
                    throw new BPELFault("SOAP Header Must be an Element");
                }
            }
        }
    }
View Full Code Here


                == null) {
            // If SOAP Header element is part of the actual payload and
            // if we couldn't find part in the response message definition equals to
            // name of the SOAP header element definition part attribute value,
            // we should throw a exception.
            throw new BPELFault("SOAP Header Element Definition refer unknown part.");
        }

        Element partElement = null;
        if (headerParts.size() > 0 && isHeaderElementAPartOfPayload) {
            try {
                partElement = (Element) headerParts.get(soapHeaderElementDefinition.getPart());
            } catch (ClassCastException e) {
                throw new BPELFault("SOAP Header must be a DOM Element.");
            }
        }

        // We only complain about missing header data if that data is a part of the actual
        // message payload. This is because, some headers will provided by SOAP engine.
        if (partElement == null && isHeaderElementAPartOfPayload) {
            if (messageFromOde.getPart(soapHeaderElementDefinition.getPart())
                    != null) {
                partElement = messageFromOde.getPart(
                        soapHeaderElementDefinition.getPart());
            } else {
                throw new BPELFault("Missing Required part in response message.");
            }
        }

        // If header is not part of the payload and if header element is null,
        // just ignore this case.
View Full Code Here

                        messageToODE,
                        responseFromPartnerService.getBody(),
                        soapBodyDefinition,
                        partnerInvocationContext.isRPCStyleOperation());
            } else {
                throw new BPELFault("SOAP Body cannot be null for WSDL operation which "
                        + "requires SOAP Body.");
            }
        }

        if (getSOAPHeaders(bindingOutPut) != null) {
View Full Code Here

            String rpcWrapperElementName = partnerRoleMessageExchange.getOperationName()
                    + "Response";
            OMElement rpcWrapperElement = omSOAPBody.getFirstChildWithName(
                    new QName(soapBodyDefinition.getNamespaceURI(), rpcWrapperElementName));
            if (rpcWrapperElement == null) {
                throw new BPELFault("Message body doesn't contain expected part wrapper: " +
                        new QName(soapBodyDefinition.getNamespaceURI(), rpcWrapperElementName));
            }
            // In RPC the body element is the operation name, wrapping parts. Order doesn't
            // really matter as far as we're concerned. All we need to do is copy the soap:body
            // children, since doc-lit rpc looks the same in ode and soap.
            for (Part partDef : messageBodyParts) {
                OMElement omPartElement = rpcWrapperElement.getFirstChildWithName(
                        new QName(null, partDef.getName()));
                if (omPartElement == null) {
                    throw new BPELFault("SOAP body doesn't contain required part: " +
                            new QName(null, partDef.getName()));
                }
                messageToODE.setPart(omPartElement.getLocalName(), OMUtils.toDOM(omPartElement));
            }
        } else {
            // In doc-literal style, we expect the elements in the body to correspond (in order)
            // to the parts defined in the binding. All the parts should be element-typed,
            // otherwise it is a mess.
            Iterator<OMElement> omParts = omSOAPBody.getChildElements();
            for (Part partDef : messageBodyParts) {
                if (!omParts.hasNext()) {
                    throw new BPELFault("SOAP body doesn't contain required part.");
                }

                OMElement omPart = omParts.next();
                if (partDef.getElementName() == null) {
                    throw new BPELFault("Binding defines non element document list parts.");
                }

                if (!omPart.getQName().equals(partDef.getElementName())) {
                    throw new BPELFault("Unexpected element in SOAP body: " + omPart.getQName());
                }
                Document doc = DOMUtils.newDocument();
                Element domPart = doc.createElementNS(null, partDef.getName());
                domPart.appendChild(doc.importNode(OMUtils.toDOM(omPart), true));
                messageToODE.setPart(partDef.getName(), domPart);
View Full Code Here

                || headerdef.getMessage().equals(msgType.getQName());
        boolean requiredHeader = payloadMessageHeader
                || (headerdef.getRequired() != null && headerdef.getRequired());

        if (requiredHeader && header == null)
            throw new BPELFault("SOAP Header missing required element.");

        if (header == null)
            return;

        Message hdrMsg = wsdl.getMessage(headerdef.getMessage());
        if (hdrMsg == null)
            return;
        Part p = hdrMsg.getPart(headerdef.getPart());
        if (p == null || p.getElementName() == null)
            return;

        OMElement headerEl = header.getFirstChildWithName(p.getElementName());
        if (requiredHeader && headerEl == null)
            throw new BPELFault("SOAP Header missing required element: " + p.getElementName());

        if (headerEl == null) return;

        odeMessage.setHeaderPart(p.getName(), OMUtils.toDOM(headerEl));
    }
View Full Code Here

     * @return The end line number, or -1 if could not be determined
     */
    public int getEndLineNumber() {
      int ret=-1;
     
      ActivityInterface parent=getParent();
     
      if (parent != null) {
        int index=parent.getSubActivities().indexOf(this);
       
        if (index != -1) {
          if (index < (parent.getSubActivities().size()-1)) {
            ActivityInterface other=parent.getSubActivities().get(index+1);
           
            ret = other.getStartLineNumber()-1;
          } else {
            ret = parent.getEndLineNumber();
          }
        }
      }
View Full Code Here

     *
     * @param lineNumber The line number
     * @return The activity, or null if not found
     */
    public ActivityInterface getActivityAtLineNumber(int lineNumber) {
      ActivityInterface ret=null;
     
      int endline=getEndLineNumber();
     
      if (getStartLineNumber() <= lineNumber && (endline == -1 || endline >= lineNumber)) {
       
View Full Code Here

            int width = 0;
            int height = 0;
            dimensions = new SVGDimension(width, height);

            SVGDimension subActivityDim = null;
            ActivityInterface activity = null;
            Iterator<org.wso2.carbon.bpel.ui.bpel2svg.ActivityInterface> itr = getSubActivities().iterator();
            while (itr.hasNext()) {
                activity = itr.next();
                subActivityDim = activity.getDimensions();
                if (subActivityDim.getWidth() > width) {
                    width += subActivityDim.getWidth();
                }
                height += subActivityDim.getHeight();
            }
View Full Code Here

    protected Element getArrows(SVGDocument doc) {
        Element subGroup = null;
        subGroup = doc.createElementNS("http://www.w3.org/2000/svg", "g");

        if (subActivities != null) {
            ActivityInterface prevActivity = null;
            ActivityInterface activity = null;
            String id = null;
            org.wso2.carbon.bpel.ui.bpel2svg.SVGCoordinates exitCoords = null;
            SVGCoordinates entryCoords = null;
            Iterator<org.wso2.carbon.bpel.ui.bpel2svg.ActivityInterface> itr = subActivities.iterator();
            while (itr.hasNext()) {
                activity = itr.next();
                if (prevActivity != null) {
                    exitCoords = prevActivity.getExitArrowCoords();
                    entryCoords = activity.getEntryArrowCoords();
                    id = prevActivity.getId() + "-" + activity.getId();
                    subGroup.appendChild(getArrowDefinition(doc, exitCoords.getXLeft(),
                        exitCoords.getYTop(), entryCoords.getXLeft(),
                        entryCoords.getYTop(), id, prevActivity, activity));
                }
                prevActivity = activity;
View Full Code Here

    @Override
    public org.wso2.carbon.bpel.ui.bpel2svg.SVGCoordinates getExitArrowCoords() {
        SVGCoordinates coords = getStartIconExitArrowCoords();

        if (subActivities != null && subActivities.size() > 0) {
            ActivityInterface activity = subActivities.get(subActivities.size() - 1);
            coords = activity.getExitArrowCoords();
        }
        return coords;
    }
View Full Code Here

TOP

Related Classes of org.wso2.carbon.bpel.ode.integration.BPELFault

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.