Package org.apache.sandesha2

Examples of org.apache.sandesha2.FaultData


    if (log.isDebugEnabled())
      log.debug("Enter: FaultManager::checkForSequenceClosed, " + sequenceID);

    if (rmdBean.isClosed()) {
      MessageContext referenceMessage = referenceRMMessage.getMessageContext();
      FaultData data = new FaultData();
      int SOAPVersion = SandeshaUtil.getSOAPVersion(referenceMessage.getEnvelope());
      if (SOAPVersion == Sandesha2Constants.SOAPVersion.v1_1)
        data.setCode(SOAP11Constants.FAULT_CODE_SENDER);
      else
        data.setCode(SOAP12Constants.FAULT_CODE_SENDER);

      data.setSubcode(SpecSpecificConstants.getFaultSubcode(referenceRMMessage.getRMNamespaceValue(),
          Sandesha2Constants.SOAPFaults.FaultType.SEQUENCE_CLOSED ));
      data.setReason(SandeshaMessageHelper.getMessage(SandeshaMessageKeys.cannotAcceptMsgAsSequenceClosedFault));
      data.setType(Sandesha2Constants.SOAPFaults.FaultType.SEQUENCE_CLOSED);
     
      SOAPFactory factory = SOAPAbstractFactory.getSOAPFactory(SOAPVersion);
      String rmNamespaceValue = referenceRMMessage.getRMNamespaceValue();
      OMElement identifierElement = factory.createOMElement(Sandesha2Constants.WSRM_COMMON.IDENTIFIER,
          rmNamespaceValue, Sandesha2Constants.WSRM_COMMON.NS_PREFIX_RM);
      identifierElement.setText(sequenceID);
     
      data.setDetail(identifierElement);

      if (log.isDebugEnabled())
        log.debug("Exit: FaultManager::checkForSequenceClosed, sequence closed");
     
      boolean throwable = !piggybackedMessage;
View Full Code Here


      // Return a CreateSequenceRefused error
      MessageContext messageContext = rmMessageContext.getMessageContext();

      int SOAPVersion = SandeshaUtil.getSOAPVersion(messageContext.getEnvelope());

      FaultData data = new FaultData();
      data.setCode(SOAP11Constants.FAULT_CODE_SENDER);
      data.setSubcode(SpecSpecificConstants.getFaultSubcode(rmMessageContext.getRMNamespaceValue(),
          Sandesha2Constants.SOAPFaults.FaultType.MESSAGE_NUMBER_ROLLOVER ));

      SOAPFactory factory = SOAPAbstractFactory.getSOAPFactory(SOAPVersion);
      OMElement identifierElement = factory.createOMElement(Sandesha2Constants.WSRM_COMMON.IDENTIFIER,
          rmMessageContext.getRMNamespaceValue(), Sandesha2Constants.WSRM_COMMON.NS_PREFIX_RM);
      identifierElement.setText(sequenceId);
     
      OMElement maxMsgNumber = factory.createOMElement(Sandesha2Constants.WSRM_COMMON.MAX_MSG_NUMBER,
          rmMessageContext.getRMNamespaceValue(), Sandesha2Constants.WSRM_COMMON.NS_PREFIX_RM);
      maxMsgNumber.setText(Long.toString(msgNo));
     
      data.setDetail(identifierElement);
      data.setDetail2(maxMsgNumber);

      data.setReason(SandeshaMessageHelper.getMessage(SandeshaMessageKeys.messageNumberRollover));
     
      data.setType(Sandesha2Constants.SOAPFaults.FaultType.MESSAGE_NUMBER_ROLLOVER);

      getOrSendFault(rmMessageContext, data, true);
     
      return true;
    }
View Full Code Here

    boolean refuseSequence = false;
    String reason = "";

    if (refuseSequence) {
      FaultData data = new FaultData();
      data.setType(Sandesha2Constants.SOAPFaults.FaultType.CREATE_SEQUENCE_REFUSED);
      int SOAPVersion = SandeshaUtil.getSOAPVersion(createSequenceRMMsg.getSOAPEnvelope());
      if (SOAPVersion == Sandesha2Constants.SOAPVersion.v1_1)
        data.setCode(SOAP11Constants.FAULT_CODE_SENDER);
      else
        data.setCode(SOAP12Constants.FAULT_CODE_SENDER);

      data.setSubcode(Sandesha2Constants.SOAPFaults.Subcodes.CREATE_SEQUENCE_REFUSED);
      data.setReason(reason);
      return getFault(createSequenceRMMsg, data,createSequenceRMMsg.getAddressingNamespaceValue());
    }

    return null;
View Full Code Here

                 "which was mentioned as last message in a previosly received application message";
      }
    }
   
    if (lastMessageNumberExceeded) {
      FaultData faultData = new FaultData ();
      faultData.setType(Sandesha2Constants.SOAPFaults.FaultType.LAST_MESSAGE_NO_EXCEEDED);
      int SOAPVersion = SandeshaUtil.getSOAPVersion(applicationRMMessage.getSOAPEnvelope());
      if (SOAPVersion == Sandesha2Constants.SOAPVersion.v1_1)
        faultData.setCode(SOAP11Constants.FAULT_CODE_SENDER);
      else
        faultData.setCode(SOAP12Constants.FAULT_CODE_SENDER);

      faultData.setSubcode(Sandesha2Constants.SOAPFaults.Subcodes.LAST_MESSAGE_NO_EXCEEDED);
      faultData.setReason(reason);
      return getFault(applicationRMMessage, faultData, applicationRMMessage.getAddressingNamespaceValue());
    } else
      return null;
  }
View Full Code Here

    if (!validSequence) {
      //Return an UnknownSequence error
      int SOAPVersion = SandeshaUtil.getSOAPVersion(messageContext.getEnvelope());

      FaultData data = new FaultData();
      if (SOAPVersion == Sandesha2Constants.SOAPVersion.v1_1)
        data.setCode(SOAP11Constants.FAULT_CODE_SENDER);
      else
        data.setCode(SOAP12Constants.FAULT_CODE_SENDER);

      data.setSubcode(Sandesha2Constants.SOAPFaults.Subcodes.UNKNOWN_SEQUENCE);

      SOAPFactory factory = SOAPAbstractFactory.getSOAPFactory(SOAPVersion);
//      Identifier identifier = new Identifier(factory,rmNamespaceValue);
//      identifier.setIndentifer(sequenceID);
//      OMElement identifierOMElem = identifier.getOMElement();
     
      OMElement identifierElement = factory.createOMElement(Sandesha2Constants.WSRM_COMMON.IDENTIFIER,rmNamespaceValue, Sandesha2Constants.WSRM_COMMON.NS_PREFIX_RM);
      data.setDetail(identifierElement);
     
      data.setReason("A sequence with the given sequenceID has NOT been established");

      return getFault(rmMessageContext, data,rmMessageContext.getAddressingNamespaceValue());
    }

    return null;
View Full Code Here

      }
    }
   
    if (invalidAck) {
      FaultData data = new FaultData();
      int SOAPVersion = SandeshaUtil.getSOAPVersion(ackMessageContext.getEnvelope());
      if (SOAPVersion == Sandesha2Constants.SOAPVersion.v1_1)
        data.setCode(SOAP11Constants.FAULT_CODE_SENDER);
      else
        data.setCode(SOAP12Constants.FAULT_CODE_SENDER);

      data.setSubcode(Sandesha2Constants.SOAPFaults.Subcodes.INVALID_ACKNOWLEDGEMENT);
      data.setReason(reason);
     
      SOAPFactory factory = SOAPAbstractFactory.getSOAPFactory(SOAPVersion);
      OMElement dummyElement = factory.createOMElement("dummyElem",null);
      sequenceAcknowledgement.toOMElement(dummyElement);
     
      OMElement sequenceAckElement = dummyElement.getFirstChildWithName(
          new QName (Sandesha2Constants.WSRM_COMMON.SEQUENCE_ACK));
      data.setDetail(sequenceAckElement);

      return getFault(ackRMMessageContext, data,ackRMMessageContext.getAddressingNamespaceValue());
    }

    return null;
View Full Code Here

      sequenceClosed = true;
      reason = "The sequence with the id " + sequenceID + " was closed previously. Cannot accept this message";
    }
   
    if (sequenceClosed) {
      FaultData data = new FaultData();
      int SOAPVersion = SandeshaUtil.getSOAPVersion(referenceMessage.getEnvelope());
      if (SOAPVersion == Sandesha2Constants.SOAPVersion.v1_1)
        data.setCode(SOAP11Constants.FAULT_CODE_SENDER);
      else
        data.setCode(SOAP12Constants.FAULT_CODE_SENDER);

      data.setSubcode(Sandesha2Constants.SOAPFaults.Subcodes.SEQUENCE_CLOSED);
      data.setReason(reason);

      return getFault(referenceRMMessage, data, referenceRMMessage.getAddressingNamespaceValue());
    }
    return null;
   
View Full Code Here

      // Return an UnknownSequence error
      MessageContext messageContext = rmMessageContext.getMessageContext();

      int SOAPVersion = SandeshaUtil.getSOAPVersion(messageContext.getEnvelope());

      FaultData data = new FaultData();
      if (SOAPVersion == Sandesha2Constants.SOAPVersion.v1_1)
        data.setCode(SOAP11Constants.FAULT_CODE_SENDER);
      else
        data.setCode(SOAP12Constants.FAULT_CODE_SENDER);

      data.setSubcode(SpecSpecificConstants.getFaultSubcode(rmMessageContext.getRMNamespaceValue(),
          Sandesha2Constants.SOAPFaults.FaultType.UNKNOWN_SEQUENCE ));

      SOAPFactory factory = SOAPAbstractFactory.getSOAPFactory(SOAPVersion);

      OMElement identifierElement = factory.createOMElement(Sandesha2Constants.WSRM_COMMON.IDENTIFIER,
          rmMessageContext.getRMNamespaceValue(), Sandesha2Constants.WSRM_COMMON.NS_PREFIX_RM);
      identifierElement.setText(sequenceID);
     
      data.setDetail(identifierElement);

      data.setReason(SandeshaMessageHelper.getMessage(SandeshaMessageKeys.unknownSequenceFault, sequenceID));
     
      data.setType(Sandesha2Constants.SOAPFaults.FaultType.UNKNOWN_SEQUENCE);

      if (log.isDebugEnabled())
        log.debug("Exit: FaultManager::checkForUnknownSequence, Sequence unknown");
     
      boolean faultThrowable = !piggybackedMessage;
View Full Code Here

   * @throws AxisFault
   */
  public static void makeInvalidAcknowledgementFault(RMMsgContext rmMsgCtx,
      SequenceAcknowledgement sequenceAcknowledgement, Range acknowledgementRange,
      StorageManager storageManager, boolean piggybackedMessage, EndpointReference acksToEPR) throws AxisFault {
    FaultData data = new FaultData();
    int SOAPVersion = SandeshaUtil.getSOAPVersion(rmMsgCtx.getMessageContext().getEnvelope());
    if (SOAPVersion == Sandesha2Constants.SOAPVersion.v1_1)
      data.setCode(SOAP11Constants.FAULT_CODE_SENDER);
    else
      data.setCode(SOAP12Constants.FAULT_CODE_SENDER);
   
    if (log.isDebugEnabled())
      log.debug("makingInvalidAck piggy=" + piggybackedMessage + ": soap=" + SOAPVersion);

    data.setType(Sandesha2Constants.SOAPFaults.FaultType.INVALID_ACKNOWLEDGEMENT);
    data.setSubcode(SpecSpecificConstants.getFaultSubcode(rmMsgCtx.getRMNamespaceValue(),
        Sandesha2Constants.SOAPFaults.FaultType.INVALID_ACKNOWLEDGEMENT ));
    data.setReason(SandeshaMessageHelper.getMessage(SandeshaMessageKeys.invalidAckFault));
   
    data.setDetail(sequenceAcknowledgement.getOriginalSequenceAckElement());
                 
    boolean throwable = !piggybackedMessage;
    getOrSendFault(rmMsgCtx, data, throwable, acksToEPR);
  }
View Full Code Here

    // Return a CreateSequenceRefused error
    MessageContext messageContext = rmMessageContext.getMessageContext();

    int SOAPVersion = SandeshaUtil.getSOAPVersion(messageContext.getEnvelope());

    FaultData data = new FaultData();
    if (SOAPVersion == Sandesha2Constants.SOAPVersion.v1_1)
      data.setCode(SOAP11Constants.FAULT_CODE_SENDER);
    else
      data.setCode(SOAP12Constants.FAULT_CODE_SENDER);

    data.setSubcode(SpecSpecificConstants.getFaultSubcode(rmMessageContext.getRMNamespaceValue(),
        Sandesha2Constants.SOAPFaults.FaultType.CREATE_SEQUENCE_REFUSED ));

    SOAPFactory factory = SOAPAbstractFactory.getSOAPFactory(SOAPVersion);
    OMElement identifierElement = factory.createOMElement(Sandesha2Constants.WSRM_COMMON.IDENTIFIER,
        rmMessageContext.getRMNamespaceValue(), Sandesha2Constants.WSRM_COMMON.NS_PREFIX_RM);
    identifierElement.setText(detail);
    data.setDetail(identifierElement);
    data.setDetailString(detail);

    data.setReason(SandeshaMessageHelper.getMessage(SandeshaMessageKeys.createSequenceRefused));
   
    data.setType(Sandesha2Constants.SOAPFaults.FaultType.CREATE_SEQUENCE_REFUSED);
   
    data.setExceptionString(SandeshaUtil.getStackTraceFromException(e));
   
    if(log.isWarnEnabled())
      log.warn(SandeshaMessageHelper.getMessage(SandeshaMessageKeys.createSequenceRefused) + ",  " + detail);

    if (log.isDebugEnabled())
View Full Code Here

TOP

Related Classes of org.apache.sandesha2.FaultData

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.