Package org.apache.axiom.soap

Examples of org.apache.axiom.soap.SOAPHeader


                                       BlockFactory blockFactory,
                                       RolePlayer rolePlayer) throws WebServiceException {
        List<Block> blocks = new ArrayList<Block>();
       
        // Get the list of OMElements that have the same header name
        SOAPHeader header = root.getHeader();
        if (header == null) {
            return blocks;
        }
       
        // Get an iterator over the headers that have a acceptable role
        Iterator it = null;
        if (rolePlayer == null) {
            it = header.getChildElements();
        } else {
            it = header.getHeadersToProcess(rolePlayer);
        }
        while (it.hasNext()) {
            OMElement om = (OMElement) it.next();
            // Create a block out of each header that matches
            // the requested namespace/localPart
View Full Code Here


        return blocks;
    }

    public Set<QName> getHeaderQNames() {
        HashSet<QName> qnames = new HashSet<QName>();
        SOAPHeader header = root.getHeader();
        if (header != null) {
            Iterator it = header.getChildElements();
            while (it != null && it.hasNext()) {
                Object node = it.next();
                if (node instanceof OMElement) {
                    qnames.add(((OMElement) node).getQName());
                }
View Full Code Here

  public boolean processAckHeaders(MessageContext message) throws AxisFault {
    if (log.isDebugEnabled())
      log.debug("Enter: AcknowledgementProcessor::processAckHeaders");

    SOAPEnvelope envelope = message.getEnvelope();
    SOAPHeader header = envelope.getHeader();
    boolean returnValue = false;
    if(header!=null)
    {
      for(int i = 0; i < Sandesha2Constants.SPEC_NS_URIS.length; i++) {
        QName headerName = new QName(Sandesha2Constants.SPEC_NS_URIS[i], Sandesha2Constants.WSRM_COMMON.SEQUENCE_ACK);
       
        Iterator acks = header.getChildrenWithName(headerName);
        while(acks.hasNext()) {
          OMElement ack = (OMElement) acks.next();
          SequenceAcknowledgement seqAck = new SequenceAcknowledgement(headerName.getNamespaceURI());
          seqAck.fromOMElement(ack);
          boolean ackPaused = processAckHeader(message, ack, seqAck);
View Full Code Here

        // deleting the ack entry.
        senderBeanMgr.delete(ackBean.getMessageID());

        // Adding the ack(s) to the application message
        boolean acks = false;
        SOAPHeader appMsgHeaders = rmMessageContext.getMessageContext().getEnvelope().getHeader();
       
        SOAPHeader headers = ackMsgContext.getEnvelope().getHeader();
        if(headers != null) {
          for(int i = 0; i < Sandesha2Constants.SPEC_NS_URIS.length; i++) {

            QName name = new QName(Sandesha2Constants.SPEC_NS_URIS[i], Sandesha2Constants.WSRM_COMMON.SEQUENCE_ACK);
            Iterator iter = headers.getChildrenWithName(name);
            while(iter.hasNext()) {
              OMElement ackElement = (OMElement) iter.next();

              SequenceAcknowledgement sequenceAcknowledgement = new SequenceAcknowledgement (Sandesha2Constants.SPEC_NS_URIS[i]);
              sequenceAcknowledgement.fromOMElement(ackElement);
View Full Code Here

  public boolean processAckRequestedHeaders(MessageContext message) throws AxisFault {
    if (log.isDebugEnabled())
      log.debug("Enter: AckRequestedProcessor::processAckRequestHeaders");

    SOAPEnvelope envelope = message.getEnvelope();
    SOAPHeader header = envelope.getHeader();
    boolean msgCtxPaused = false;
    if(header!=null)
    {
      for(int i = 0; i < Sandesha2Constants.SPEC_NS_URIS.length; i++) {
        QName headerName = new QName(Sandesha2Constants.SPEC_NS_URIS[i], Sandesha2Constants.WSRM_COMMON.ACK_REQUESTED);
       
        Iterator acks = header.getChildrenWithName(headerName);
        while(acks.hasNext()) {
          OMElement ack = (OMElement) acks.next();
          AckRequested ackReq = new AckRequested(headerName.getNamespaceURI());
          ackReq.fromOMElement(ack);
          boolean paused = processAckRequestedHeader(message, ack, ackReq);
View Full Code Here

    if (headerElement == null || !(headerElement instanceof SOAPHeader))
      throw new OMException(SandeshaMessageHelper.getMessage(
          SandeshaMessageKeys.seqElementCannotBeAddedToNonHeader));

    SOAPHeader soapHeader = (SOAPHeader) headerElement;

    if (identifier == null)
      throw new OMException(SandeshaMessageHelper.getMessage(
          SandeshaMessageKeys.nullMsgId));
    if (messageNumber == null)
      throw new OMException(SandeshaMessageHelper.getMessage(
          SandeshaMessageKeys.seqPartIsNull));

    OMFactory factory = headerElement.getOMFactory();

    OMNamespace rmNamespace = factory.createOMNamespace(
        namespaceValue, Sandesha2Constants.WSRM_COMMON.NS_PREFIX_RM);
    SOAPHeaderBlock sequenceHeaderBlock = soapHeader.addHeaderBlock(
        Sandesha2Constants.WSRM_COMMON.SEQUENCE, rmNamespace);
   
    sequenceHeaderBlock.setMustUnderstand(isMustUnderstand());
    identifier.toOMElement(sequenceHeaderBlock);
    messageNumber.toOMElement(sequenceHeaderBlock);
View Full Code Here

  public void setMessageNumber(MessageNumber messageNumber) {
    this.messageNumber = messageNumber;
  }

  public void toSOAPEnvelope(SOAPEnvelope envelope) {
    SOAPHeader header = envelope.getHeader();
   
    if (header==null) {
      SOAPFactory factory = (SOAPFactory)envelope.getOMFactory();
      header = factory.createSOAPHeader(envelope);
    }
   
    //detach if already exist.
    OMElement elem = header.getFirstChildWithName(new QName(namespaceValue,
        Sandesha2Constants.WSRM_COMMON.SEQUENCE));
    if (elem!=null)
      elem.detach();
   
    toOMElement(header);
View Full Code Here

   
    this.namespaceValue = namespaceValue;
  }
 
  public void toSOAPEnvelope(SOAPEnvelope envelope) throws SandeshaException {
    SOAPHeader header = envelope.getHeader();
   
    if (header==null) {
      SOAPFactory factory = (SOAPFactory)envelope.getOMFactory();
      header = factory.createSOAPHeader(envelope);
    }
   
    //detach if already exist.
    OMElement elem = header.getFirstChildWithName(new QName(namespaceValue,
        Sandesha2Constants.WSRM_COMMON.MESSAGE_PENDING));
    if (elem!=null)
      elem.detach();
   
    toOMElement(header);
View Full Code Here

    if (!(headerElement instanceof SOAPHeader)) {
      String message = "'MessagePending' element can only be added to a SOAP Header";
      throw new OMException(message);
    }
   
    SOAPHeader header = (SOAPHeader) headerElement;
    OMFactory factory = header.getOMFactory();
    OMNamespace namespace = factory.createOMNamespace(namespaceValue,Sandesha2Constants.WSRM_COMMON.NS_PREFIX_RM);
   
    SOAPHeaderBlock headerBlock = header.addHeaderBlock(Sandesha2Constants.WSRM_COMMON.MESSAGE_PENDING,namespace);
   
    OMAttribute attribute = factory.createOMAttribute(Sandesha2Constants.WSRM_COMMON.PENDING,null,new Boolean (pending).toString());
    headerBlock.addAttribute(attribute);
   
    return headerElement;
View Full Code Here

     * @return the resulting SOAPEnvelope
     */
    private static SOAPEnvelope removeAddressingHeaders(MessageContext axisMsgCtx) {

        SOAPEnvelope env = axisMsgCtx.getEnvelope();
        SOAPHeader soapHeader = env.getHeader();
        ArrayList addressingHeaders;

        if (soapHeader != null) {
            addressingHeaders = soapHeader.getHeaderBlocksWithNSURI(
                AddressingConstants.Submission.WSA_NAMESPACE);

            if (addressingHeaders != null && addressingHeaders.size() != 0) {
                detachAddressingInformation(addressingHeaders);

            } else {
                addressingHeaders = soapHeader.getHeaderBlocksWithNSURI(
                    AddressingConstants.Final.WSA_NAMESPACE);
                if (addressingHeaders != null && addressingHeaders.size() != 0) {
                    detachAddressingInformation(addressingHeaders);
                }
            }
View Full Code Here

TOP

Related Classes of org.apache.axiom.soap.SOAPHeader

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.