private OMElement generateHeaderMessages(AxisMessage axismessage, OMFactory fac) { ArrayList extList = axismessage.getSoapHeaders(); for (Object anExtList : extList) { SOAPHeaderMessage header = (SOAPHeaderMessage)anExtList; OMElement messageElement = fac.createOMElement(MESSAGE_LOCAL_NAME, wsdl); messageElement.addAttribute(ATTRIBUTE_NAME, header.getMessage().getLocalPart(), null); OMElement messagePart = fac.createOMElement(PART_ATTRIBUTE_NAME, wsdl); messageElement.addChild(messagePart); messagePart.addAttribute(ATTRIBUTE_NAME, header.part(), null); if (header.getElement() == null) { throw new RuntimeException(ELEMENT_ATTRIBUTE_NAME + " is null for " + header.getMessage()); } messagePart.addAttribute(ELEMENT_ATTRIBUTE_NAME, WSDLSerializationUtil.getPrefix(header.getElement() .getNamespaceURI(), axisService.getNamespaceMap()) + ":" + header.getElement().getLocalPart(), null); return messageElement; } return null; }
/** * Convert woden dependent SOAPHeaderBlock objects to SOAPHeaderMessage objects * * @param soapHeaderBlocks - An array of SOAPHeaderBlock objects * @return List<SOAPHeaderMessage - An List of SOAPHeaderMessage objects */ private List<SOAPHeaderMessage> createSoapHeaders(SOAPHeaderBlock soapHeaderBlocks[]) { if (soapHeaderBlocks.length == 0) { return null; } List<SOAPHeaderMessage> soapHeaderMessages = new ArrayList<SOAPHeaderMessage>(); for (int i = 0; i < soapHeaderBlocks.length; i++) { SOAPHeaderBlock soapHeaderBlock = soapHeaderBlocks[i]; ElementDeclaration elementDeclaration = soapHeaderBlock.getElementDeclaration(); if (elementDeclaration != null) { QName name = elementDeclaration.getName(); SOAPHeaderMessage soapHeaderMessage = new SOAPHeaderMessage(); soapHeaderMessage.setElement(name); soapHeaderMessage.setRequired(soapHeaderBlock.isRequired().booleanValue()); soapHeaderMessage .setMustUnderstand(soapHeaderBlock.mustUnderstand().booleanValue()); soapHeaderMessages.add(soapHeaderMessage); } } return soapHeaderMessages; }
private void addSOAPHeader(OMFactory fac, OMElement element, SOAPHeaderMessage header, OMNamespace soapNameSpace) { OMElement extElement = fac.createOMElement("header", soapNameSpace); element.addChild(extElement); String use = header.getUse(); if (use != null) { extElement.addAttribute("use", use, null); } if (header.part() != null) { extElement.addAttribute("part", header.part(), null); } if (header.getMessage() != null) { extElement.addAttribute("message", WSDLSerializationUtil.getPrefix( targetNamespace, axisService.getNamespaceMap()) + ":" + header.getMessage().getLocalPart(), null); } }
/** * Adds a soap header element to a given OMElement * @param omFactory - An OMFactory * @param list - The arraylist of soapHeaderMessages * @param wsoap - The WSDL 2.0 SOAP namespace * @param element - The element that the header should be added to * @param nameSpaceMap - The namespaceMap */ public static void addSOAPHeaderElements(OMFactory omFactory, ArrayList list, OMNamespace wsoap, OMElement element, Map nameSpaceMap) { for (int i = 0; i < list.size(); i++) { SOAPHeaderMessage soapHeaderMessage = (SOAPHeaderMessage) list.get(i); OMElement soapHeaderElement = omFactory.createOMElement(WSDL2Constants.ATTRIBUTE_HEADER, wsoap); QName qName = soapHeaderMessage.getElement(); soapHeaderElement.addAttribute(omFactory.createOMAttribute( WSDL2Constants.ATTRIBUTE_ELEMENT, null, getPrefix(qName.getNamespaceURI(), nameSpaceMap) + ":" + qName.getLocalPart())); soapHeaderElement.addAttribute(omFactory.createOMAttribute( WSDL2Constants.ATTRIBUTE_MUST_UNDERSTAND, null, Boolean.toString(soapHeaderMessage.isMustUnderstand()))); soapHeaderElement.addAttribute(omFactory.createOMAttribute( WSDL2Constants.ATTRIBUTE_REQUIRED, null, Boolean.toString(soapHeaderMessage.isRequired()))); element.addChild(soapHeaderElement); } }
SOAPHeaderMessage headerMessage = new SOAPHeaderMessage(); headerMessage.setNamespaceURI(soapHeader.getNamespaceURI()); headerMessage.setUse(soapHeader.getUse()); headerMessage.setRequired(required.booleanValue()); headerMessage.setElement(msgPart.getElementName()); headerMessage.setMessage(soapHeader.getMessage()); headerMessage.setPart(soapHeader.getPart()); SOAPHeaderMessage headerMessage = new SOAPHeaderMessage(); headerMessage.setNamespaceURI(soapHeader.getNamespaceURI()); headerMessage.setUse(soapHeader.getUse()); Boolean required = soapHeader.getRequired(); if (null != required) { headerMessage.setRequired(required.booleanValue()); + " not found in the WSDL "); headerMessage.setElement(msgPart.getElementName()); headerMessage.setMessage(soapHeader.getMessage()); headerMessage.setPart(soapHeader.getPart());
Element param = doc.createElement("param"); SOAPHeaderMessage header = (SOAPHeaderMessage) parameters.get(i); QName name = header.getElement(); if (header.isMustUnderstand()) { addAttribute(doc, "mustUnderstand", "true", param);
private String mapMessage(SOAPHeaderMessage msg, Map complexTypeMap) { QName qname = msg.getElement(); if (qname == null) { throw new RuntimeException("No element reference in header"); } return mapQName(qname, complexTypeMap); }
/** * Adds a soap header element to a given OMElement * @param omFactory - An OMFactory * @param list - The arraylist of soapHeaderMessages * @param wsoap - The WSDL 2.0 SOAP namespace * @param element - The element that the header should be added to * @param nameSpaceMap - The namespaceMap */ public static void addSOAPHeaderElements(OMFactory omFactory, ArrayList list, OMNamespace wsoap, OMElement element, Map nameSpaceMap) { for (int i = 0; i < list.size(); i++) { SOAPHeaderMessage soapHeaderMessage = (SOAPHeaderMessage) list.get(i); OMElement soapHeaderElement = omFactory.createOMElement(WSDL2Constants.ATTRIBUTE_HEADER, wsoap); QName qName = soapHeaderMessage.getElement(); soapHeaderElement.addAttribute(omFactory.createOMAttribute( WSDL2Constants.ATTRIBUTE_ELEMENT, null, getPrefix(qName.getNamespaceURI(), nameSpaceMap) + ":" + qName.getLocalPart())); soapHeaderElement.addAttribute(omFactory.createOMAttribute( WSDL2Constants.ATTRIBUTE_MUST_UNDERSTAND, null, Boolean.toString(soapHeaderMessage.isMustUnderstand()))); soapHeaderElement.addAttribute(omFactory.createOMAttribute( WSDL2Constants.ATTRIBUTE_REQUIRED, null, Boolean.toString(soapHeaderMessage.isRequired()))); element.addChild(soapHeaderElement); } }
SOAPHeaderMessage headerMessage = new SOAPHeaderMessage(); headerMessage.setNamespaceURI(soapHeader.getNamespaceURI()); headerMessage.setUse(soapHeader.getUse()); headerMessage.setRequired(required.booleanValue()); headerMessage.setElement(msgPart.getElementName()); headerMessage.setMessage(soapHeader.getMessage()); headerMessage.setPart(soapHeader.getPart()); SOAPHeaderMessage headerMessage = new SOAPHeaderMessage(); headerMessage.setNamespaceURI(soapHeader.getNamespaceURI()); headerMessage.setUse(soapHeader.getUse()); Boolean required = soapHeader.getRequired(); if (null != required) { headerMessage.setRequired(required.booleanValue()); + " not found in the WSDL "); headerMessage.setElement(msgPart.getElementName()); headerMessage.setMessage(soapHeader.getMessage()); headerMessage.setPart(soapHeader.getPart());
Element param = doc.createElement("param"); SOAPHeaderMessage header = (SOAPHeaderMessage) parameters.get(i); QName name = header.getElement(); if (header.isMustUnderstand()) { addAttribute(doc, "mustUnderstand", "true", param);
private String mapMessage(SOAPHeaderMessage msg, Map complexTypeMap) { QName qname = msg.getElement(); if (qname == null) { throw new RuntimeException("No element reference in header"); } return mapQName(qname, complexTypeMap); }
private OMElement generateHeaderMessages(AxisMessage axismessage, OMFactory fac) { ArrayList extList = axismessage.getSoapHeaders(); for (Object anExtList : extList) { SOAPHeaderMessage header = (SOAPHeaderMessage)anExtList; OMElement messageElement = fac.createOMElement(MESSAGE_LOCAL_NAME, wsdl); messageElement.addAttribute(ATTRIBUTE_NAME, header.getMessage().getLocalPart(), null); OMElement messagePart = fac.createOMElement(PART_ATTRIBUTE_NAME, wsdl); messageElement.addChild(messagePart); messagePart.addAttribute(ATTRIBUTE_NAME, header.part(), null); if (header.getElement() == null) { throw new RuntimeException(ELEMENT_ATTRIBUTE_NAME + " is null for " + header.getMessage()); } messagePart.addAttribute(ELEMENT_ATTRIBUTE_NAME, WSDLSerializationUtil.getPrefix(header.getElement() .getNamespaceURI(), axisService.getNamespaceMap()) + ":" + header.getElement().getLocalPart(), null); return messageElement; } return null; }
/** * populate the header parameters to faults * * @param soapHeaderParameterQNameList * @param axisOperation */ protected void addHeaderOperationsToFault(List soapHeaderParameterQNameList, AxisOperation axisOperation) { ArrayList headerparamList = new ArrayList(); ArrayList faultMessages = axisOperation.getFaultMessages(); Iterator iter = faultMessages.iterator(); while (iter.hasNext()) { AxisMessage axisFaultMessage = (AxisMessage) iter.next(); headerparamList.addAll((ArrayList) getBindingPropertyFromMessageFault( WSDL2Constants.ATTR_WSOAP_HEADER, axisOperation.getName(), axisFaultMessage.getName())); } if (headerparamList != null) { for (Iterator iterator = headerparamList.iterator(); iterator.hasNext();) { SOAPHeaderMessage header = (SOAPHeaderMessage) iterator.next(); soapHeaderParameterQNameList.add(header.getElement()); } } }
/** * Convert woden dependent SOAPHeaderBlock objects to SOAPHeaderMessage objects * * @param soapHeaderBlocks - An array of SOAPHeaderBlock objects * @return List<SOAPHeaderMessage - An List of SOAPHeaderMessage objects */ private List<SOAPHeaderMessage> createSoapHeaders(SOAPHeaderBlock soapHeaderBlocks[]) { if (soapHeaderBlocks.length == 0) { return null; } List<SOAPHeaderMessage> soapHeaderMessages = new ArrayList<SOAPHeaderMessage>(); for (int i = 0; i < soapHeaderBlocks.length; i++) { SOAPHeaderBlock soapHeaderBlock = soapHeaderBlocks[i]; ElementDeclaration elementDeclaration = soapHeaderBlock.getElementDeclaration(); if (elementDeclaration != null) { QName name = elementDeclaration.getName(); SOAPHeaderMessage soapHeaderMessage = new SOAPHeaderMessage(); soapHeaderMessage.setElement(name); soapHeaderMessage.setRequired(soapHeaderBlock.isRequired().booleanValue()); soapHeaderMessage .setMustUnderstand(soapHeaderBlock.mustUnderstand().booleanValue()); soapHeaderMessages.add(soapHeaderMessage); } } return soapHeaderMessages; }
private void addSOAPHeader(OMFactory fac, OMElement element, SOAPHeaderMessage header, OMNamespace soapNameSpace) { OMElement extElement = fac.createOMElement("header", soapNameSpace); element.addChild(extElement); String use = header.getUse(); if (use != null) { extElement.addAttribute("use", use, null); } if (header.part() != null) { extElement.addAttribute("part", header.part(), null); } if (header.getMessage() != null) { extElement.addAttribute("message", WSDLSerializationUtil.getPrefix( targetNamespace, axisService.getNamespaceMap()) + ":" + header.getMessage().getLocalPart(), null); } }
topElement = new TopElement(soapHeaderMessage.getElement()); topSchemaElements.add(topElement); xmlSchemaElement = getSchemaElement(soapHeaderMessage.getElement()); topElement.setTypeQName(xmlSchemaElement.getSchemaTypeName()); topSchemaElements.add(topElement);