You are viewing a plain text version of this content. The canonical link for it is here.
Posted to sandesha-dev@ws.apache.org by ml...@apache.org on 2007/02/07 14:50:08 UTC
svn commit: r504544 - in
/webservices/sandesha/trunk/java/src/org/apache/sandesha2: ./ handlers/
msgprocessors/ polling/ util/
Author: mlovett
Date: Wed Feb 7 05:50:06 2007
New Revision: 504544
URL: http://svn.apache.org/viewvc?view=rev&rev=504544
Log:
Remove as much as possible from the global in handler, and delete dead code
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaGlobalInHandler.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/SequenceProcessor.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/polling/PollingManager.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/WSRMMessageSender.java
Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java?view=diff&rev=504544&r1=504543&r2=504544
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/Sandesha2Constants.java Wed Feb 7 05:50:06 2007
@@ -52,6 +52,8 @@
String ACTION_TERMINATE_SEQUENCE = "http://schemas.xmlsoap.org/ws/2005/02/rm/TerminateSequence";
+ String ACTION_LAST_MESSAGE = "http://schemas.xmlsoap.org/ws/2005/02/rm/LastMessage";
+
String SOAP_ACTION_CREATE_SEQUENCE = "http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence";
String SOAP_ACTION_CREATE_SEQUENCE_RESPONSE = "http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequenceResponse";
@@ -59,6 +61,8 @@
String SOAP_ACTION_SEQUENCE_ACKNOWLEDGEMENT = "http://schemas.xmlsoap.org/ws/2005/02/rm/SequenceAcknowledgement";
String SOAP_ACTION_TERMINATE_SEQUENCE = "http://schemas.xmlsoap.org/ws/2005/02/rm/TerminateSequence";
+
+ String SOAP_ACTION_LAST_MESSAGE = "http://schemas.xmlsoap.org/ws/2005/02/rm/LastMessage";
}
}
@@ -423,12 +427,6 @@
static final String TEMP_SEQUENCE_ID = "uuid:tempID";
- static final String ACK_PROCSSED = "AckProcessed";
-
- static final String RM_ENABLE_KEY = "RMEnabled";
-
- int MAXIMUM_RETRANSMISSION_ATTEMPTS = 5;
-
static final String PROPERTY_FILE = "sandesha2.properties";
static final String VALUE_NONE = "none";
@@ -449,8 +447,6 @@
static final String QUALIFIED_FOR_SENDING = "Sandesha2QualifiedForSending"; //Sender will send messages only if this property is null (not set) or true.
- static final String QNAME_SEPERATOR = ",";
-
static final String EXECUTIN_CHAIN_SEPERATOR = ".";
static final String INTERNAL_SEQUENCE_PREFIX = "Sandesha2InternalSequence";
@@ -459,8 +455,6 @@
static final String LIST_SEPERATOR = ",";
- static final String LIST_PART_SEPERATOR = "-";
-
static final String INMEMORY_STORAGE_MANAGER = "inmemory";
static final String PERMANENT_STORAGE_MANAGER = "persistent";
@@ -495,11 +489,6 @@
static final String MAKE_CONNECTION_RESPONSE = "MakeConnectionResponse";
- //In RM 1.1 AnonRMURI case we may not be terminating a request sequence unless the response side create sequence
- //msg hs been received through polling. This property will be used to track this.
- String TERMINATE_ON_CREATE_SEQUENCE = "TerminateOnCS";
-
-
static final String [] SPEC_NS_URIS = {
SPEC_2005_02.NS_URI,
SPEC_2006_08.NS_URI
@@ -509,7 +498,6 @@
static final String INTERNAL_SEQUENCE_ID = "Sandesha2InternalSequenceId";
static final String SEQUENCE_ID = "WSRMSequenceId";
static final String MESSAGE_NUMBER = "WSRMMessageNumber";
- static final String SEQUENCE_PROPERTY_KEY = "SequencePropertyKey";
static final String SECURITY_TOKEN = "SecurityToken";
}
Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaGlobalInHandler.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaGlobalInHandler.java?view=diff&rev=504544&r1=504543&r2=504544
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaGlobalInHandler.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/handlers/SandeshaGlobalInHandler.java Wed Feb 7 05:50:06 2007
@@ -19,32 +19,19 @@
import org.apache.axiom.soap.SOAPBody;
import org.apache.axiom.soap.SOAPEnvelope;
+import org.apache.axiom.soap.SOAPHeader;
import org.apache.axis2.AxisFault;
-import org.apache.axis2.addressing.RelatesTo;
-import org.apache.axis2.context.ConfigurationContext;
import org.apache.axis2.context.MessageContext;
-import org.apache.axis2.context.OperationContext;
import org.apache.axis2.handlers.AbstractHandler;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.sandesha2.RMMsgContext;
import org.apache.sandesha2.Sandesha2Constants;
-import org.apache.sandesha2.SandeshaException;
-import org.apache.sandesha2.i18n.SandeshaMessageHelper;
-import org.apache.sandesha2.i18n.SandeshaMessageKeys;
-import org.apache.sandesha2.msgprocessors.SequenceProcessor;
-import org.apache.sandesha2.storage.StorageManager;
-import org.apache.sandesha2.storage.Transaction;
-import org.apache.sandesha2.storage.beanmanagers.RMDBeanMgr;
-import org.apache.sandesha2.storage.beans.RMDBean;
-import org.apache.sandesha2.util.MsgInitializer;
-import org.apache.sandesha2.util.Range;
-import org.apache.sandesha2.util.SandeshaUtil;
import org.apache.sandesha2.wsrm.Sequence;
/**
- * The Global handler of Sandesha2. This is used to perform things that should
- * be done before diapatching such as duplicate detection.
+ * The Global handler of Sandesha2. This is only used to check for WSRM 1.0 messages
+ * that have a particular way of signalling the last message in a sequence. These
+ * checks have to be done before dispatch.
*/
public class SandeshaGlobalInHandler extends AbstractHandler {
@@ -58,193 +45,49 @@
if (log.isDebugEnabled())
log.debug("Enter: SandeshaGlobalInHandler::invoke, " + msgContext.getEnvelope().getHeader());
- InvocationResponse returnValue = InvocationResponse.CONTINUE;
-
- ConfigurationContext configContext = msgContext.getConfigurationContext();
- if (configContext == null)
- throw new AxisFault(SandeshaMessageHelper.getMessage(SandeshaMessageKeys.configContextNotSet));
-
- SOAPEnvelope envelope = msgContext.getEnvelope();
- if (envelope == null)
- throw new SandeshaException(SandeshaMessageHelper.getMessage(SandeshaMessageKeys.soapEnvNotSet));
-
- String reinjectedMessage = (String) msgContext.getProperty(Sandesha2Constants.REINJECTED_MESSAGE);
- if (reinjectedMessage != null && Sandesha2Constants.VALUE_TRUE.equals(reinjectedMessage))
- return returnValue; // Reinjected messages are not processed by Sandesha2 inflow
- // handlers
-
- Transaction transaction = null;
-
- try {
-
- // Quitting the message with minimum processing if not intended for
- // RM.
- boolean isRMGlobalMessage = SandeshaUtil.isRMGlobalMessage(msgContext);
- if (!isRMGlobalMessage) {
- if (log.isDebugEnabled())
- log.debug("Exit: SandeshaGlobalInHandler::invoke, !isRMGlobalMessage " + returnValue);
- return returnValue;
- }
-
- StorageManager storageManager = null;
- try {
- storageManager = SandeshaUtil
- .getSandeshaStorageManager(configContext, configContext.getAxisConfiguration());
- if (storageManager == null) {
- log.debug("Sandesha2 cannot proceed. The StorageManager is not available " + returnValue);
- return returnValue;
- }
- } catch (SandeshaException e1) {
- // TODO make this a log
- log.debug("Sandesha2 cannot proceed. Exception thrown when looking for the StorageManager", e1);
- return returnValue;
- }
-
- transaction = storageManager.getTransaction();
-
- RMMsgContext rmMessageContext = MsgInitializer.initializeMessage(msgContext);
-
- boolean shouldMessageBeDropped = shouldMessageBeDropped (rmMessageContext, storageManager);
-
- if (shouldMessageBeDropped) {
-
- returnValue = InvocationResponse.ABORT; // the msg has been
- // dropped
- SequenceProcessor.sendAckIfNeeded(rmMessageContext, storageManager,true);
- if (log.isDebugEnabled())
- log.debug("Exit: SandeshaGlobalInHandler::invoke, dropped "
- + returnValue);
- return returnValue;
-
- }
-
- // Process if global processing possible. - Currently none
- if (SandeshaUtil.isGloballyProcessableMessageType(rmMessageContext.getMessageType())) {
- doGlobalProcessing(rmMessageContext);
- }
-
- } catch (Exception e) {
- if (log.isDebugEnabled()) log.debug("Caught an exception", e);
-
- if (transaction != null) {
- try {
- transaction.rollback();
- transaction = null;
- } catch (Exception e1) {
- String message = SandeshaMessageHelper.getMessage(SandeshaMessageKeys.rollbackError, e1.toString());
- log.debug(message, e);
- }
- }
-
- String message = SandeshaMessageHelper.getMessage(SandeshaMessageKeys.inMsgError, e.toString());
- if (log.isDebugEnabled())
- log.debug("Exit: SandeshaGlobalInHandler::invoke ", e);
- throw new AxisFault(message, e);
- } finally {
- if (transaction != null) {
+ // The only work that this handler needs to do is identify messages which
+ // follow the WSRM 1.0 convention for sending 'LastMessage' when the sender
+ // doesn't have a reliable message to piggyback the last message marker onto.
+ // Normally they will identify this scenario with an action marker, but if
+ // there is no action at all then we have to check the soap body.
+ // Either way, all that this handler need do is set the action back onto
+ // the message, so that the dispatchers can allow it to continue. The real
+ // processing will be done in the SequenceProcessor.
+ String soapAction = msgContext.getSoapAction();
+ String wsaAction = msgContext.getWSAAction();
+ if(soapAction == null && wsaAction == null) {
+ // Look for a WSRM 1.0 sequence header with the lastMessage marker
+ SOAPEnvelope env = msgContext.getEnvelope();
+ if(env != null) {
+ boolean lastMessageHeader = false;
try {
- transaction.commit();
- } catch (Exception e) {
- String message = SandeshaMessageHelper.getMessage(SandeshaMessageKeys.commitError, e.toString());
- if (log.isDebugEnabled())
- log.debug("Exit: SandeshaGlobalInHandler::invoke ", e);
- throw new AxisFault(message, e);
- }
- }
- }
- if (log.isDebugEnabled())
- log.debug("Exit: SandeshaGlobalInHandler::invoke " + returnValue);
- return returnValue;
- }
-
- private boolean shouldMessageBeDropped(RMMsgContext rmMsgContext, StorageManager storageManager) throws AxisFault {
-
- if (log.isDebugEnabled())
- log.debug("Enter: SandeshaGlobalInHandler::dropIfDuplicate");
-
- boolean drop = false;
-
- if (rmMsgContext.getMessageType() == Sandesha2Constants.MessageTypes.APPLICATION) {
-
- Sequence sequence = (Sequence) rmMsgContext.getMessagePart(Sandesha2Constants.MessageParts.SEQUENCE);
- String sequenceId = null;
-
- if (drop == false) {
- // Checking for RM specific EMPTY_BODY LASTMESSAGE.
- SOAPBody body = rmMsgContext.getSOAPEnvelope().getBody();
- boolean emptyBody = false;
- if (body.getChildElements().hasNext() == false) {
- emptyBody = true;
- }
-
- if (emptyBody) {
- if (sequence.getLastMessage() != null) {
- log.debug(SandeshaMessageHelper.getMessage(SandeshaMessageKeys.emptyLastMsg));
- drop = true;
-
- //marking current message as a received message.
-
- RMDBeanMgr rmdBeanMgr = storageManager.getRMDBeanMgr();
-
- RMDBean findBean = new RMDBean ();
- findBean.setSequenceID(sequenceId);
- RMDBean rmdBean = rmdBeanMgr.findUnique(findBean);
-
- long messageNo = sequence.getMessageNumber().getMessageNumber();
- rmdBean.getServerCompletedMessages().addRange (new Range (messageNo));
- rmdBeanMgr.update(rmdBean);
-
- drop = true;
-
+ SOAPHeader header = env.getHeader();
+ if(header != null) {
+ Sequence sequence = new Sequence(Sandesha2Constants.SPEC_2005_02.NS_URI);
+ sequence.fromOMElement(header);
+ if(sequence.getLastMessage() != null) {
+ lastMessageHeader = true;
+ }
}
-
+ } catch(Exception e) {
+ // Do nothing, we failed to find a Sequence header
}
- }
- } else if (rmMsgContext.getMessageType() != Sandesha2Constants.MessageTypes.UNKNOWN) {
- // droping other known message types if, an suitable operation
- // context is not available,
- // and if a relates to value is present.
- RelatesTo relatesTo = rmMsgContext.getRelatesTo();
- if (relatesTo != null) {
- String value = relatesTo.getValue();
-
- // TODO do not drop, relationshipTypes other than reply
-
- ConfigurationContext configurationContext = rmMsgContext.getMessageContext().getConfigurationContext();
- OperationContext operationContextFromMap = configurationContext.getOperationContext(value);
- OperationContext operationContext = rmMsgContext.getMessageContext().getOperationContext();
-
- // reply messages should be dropped if it cannot be instance
- // dispatched.
- // I.e. both not having a op. ctx not and not having a op. ctx
- // in the global list.
- if (operationContext == null && operationContextFromMap == null) {
- String message = SandeshaMessageHelper.getMessage(SandeshaMessageKeys.droppingDuplicate);
- log.debug(message);
- drop = true;
+ if(lastMessageHeader) {
+ SOAPBody body = env.getBody();
+ if(body != null && body.getFirstElement() == null) {
+ // There is an empty body so we know this is the kind of message
+ // that we are looking for.
+ if(log.isDebugEnabled()) log.debug("Setting SOAP Action for a WSRM 1.0 last message");
+ msgContext.setSoapAction(Sandesha2Constants.SPEC_2005_02.Actions.SOAP_ACTION_LAST_MESSAGE);
+ }
}
}
- }
- if (drop) {
- rmMsgContext.getMessageContext().pause();
- String message = SandeshaMessageHelper.getMessage(SandeshaMessageKeys.droppingDuplicate);
- log.debug(message);
- if (log.isDebugEnabled())
- log.debug("Exit: SandeshaGlobalInHandler::dropIfDuplicate, true");
- return true;
}
-
- if (log.isDebugEnabled())
- log.debug("Exit: SandeshaGlobalInHandler::dropIfDuplicate, false");
- return false;
- }
-
- private void doGlobalProcessing(RMMsgContext rmMsgCtx) throws SandeshaException {
- }
-
- public String getName() {
- return Sandesha2Constants.GLOBAL_IN_HANDLER_NAME;
+ if (log.isDebugEnabled())
+ log.debug("Exit: SandeshaGlobalInHandler::invoke, continuing");
+ return InvocationResponse.CONTINUE;
}
+
}
Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/SequenceProcessor.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/SequenceProcessor.java?view=diff&rev=504544&r1=504543&r2=504544
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/SequenceProcessor.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/msgprocessors/SequenceProcessor.java Wed Feb 7 05:50:06 2007
@@ -323,7 +323,17 @@
AcknowledgementManager.removeAckBeanEntries(sequenceId, storageManager);
AcknowledgementManager.addAckBeanEntry(ackRMMsgContext, sequenceId, timeToSend, storageManager);
}
-
+
+ // If this message matches the WSRM 1.0 pattern for an empty last message (e.g.
+ // the sender wanted to signal the last message, but didn't have an application
+ // message to send) then we do not need to send the message on to the application.
+ if(Sandesha2Constants.SPEC_2005_02.Actions.ACTION_LAST_MESSAGE.equals(msgCtx.getWSAAction()) ||
+ Sandesha2Constants.SPEC_2005_02.Actions.SOAP_ACTION_LAST_MESSAGE.equals(msgCtx.getSoapAction())) {
+ if (log.isDebugEnabled())
+ log.debug("Exit: SequenceProcessor::processReliableMessage, got WSRM 1.0 lastmessage, aborting");
+ return InvocationResponse.ABORT;
+ }
+
// If the storage manager has an invoker, then they may be implementing inOrder, or
// transactional delivery. Either way, if they have one we should use it.
SandeshaThread invoker = storageManager.getInvoker();
Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/polling/PollingManager.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/polling/PollingManager.java?view=diff&rev=504544&r1=504543&r2=504544
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/polling/PollingManager.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/polling/PollingManager.java Wed Feb 7 05:50:06 2007
@@ -181,9 +181,6 @@
//storing the MakeConnection message.
String makeConnectionMsgStoreKey = SandeshaUtil.getUUID();
- makeConnectionRMMessage.setProperty(Sandesha2Constants.MessageContextProperties.SEQUENCE_PROPERTY_KEY,
- sequencePropertyKey);
-
//add an entry for the MakeConnection message to the sender (with ,send=true, resend=false)
SenderBean makeConnectionSenderBean = new SenderBean ();
makeConnectionSenderBean.setInternalSequenceID((rmBean instanceof RMSBean) ? sequencePropertyKey : null); // We only have internal ids for the RMS-side
Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java?view=diff&rev=504544&r1=504543&r2=504544
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SandeshaUtil.java Wed Feb 7 05:50:06 2007
@@ -19,7 +19,6 @@
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
-import java.io.OutputStream;
import java.io.PrintWriter;
import java.lang.reflect.Constructor;
import java.util.ArrayList;
@@ -27,12 +26,9 @@
import java.util.Map;
import javax.xml.namespace.QName;
-import javax.xml.stream.FactoryConfigurationError;
import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLOutputFactory;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.soap.SOAP11Constants;
@@ -207,24 +203,6 @@
}
}
- public static boolean isGloballyProcessableMessageType(int type) {
- if (type == Sandesha2Constants.MessageTypes.ACK || type == Sandesha2Constants.MessageTypes.TERMINATE_SEQ) {
- return true;
- }
-
- return false;
- }
-
- public static boolean isDuplicateDropRequiredMsgType(int rmMessageType) {
- if (rmMessageType == Sandesha2Constants.MessageTypes.APPLICATION)
- return true;
-
- if (rmMessageType == Sandesha2Constants.MessageTypes.CREATE_SEQ_RESPONSE)
- return true;
-
- return false;
- }
-
public static String getServerSideIncomingSeqIdFromInternalSeqId(String internalSequenceId)
throws SandeshaException {
@@ -339,72 +317,7 @@
namespaceName));
}
- public static boolean isRMGlobalMessage(MessageContext msgCtx) {
- boolean rmGlobalMsg = false;
-
- String action = msgCtx.getWSAAction();
- SOAPEnvelope env = msgCtx.getEnvelope();
- SOAPHeader header = null;
- if (env != null)
- header = env.getHeader();
- else {
- log.error(SandeshaMessageHelper.getMessage(
- SandeshaMessageKeys.soapEnvNotSet));
- return false;
- }
-
- // TODO make this spec indipendent
-
- OMElement sequenceElem = null;
- if (header != null) {
- sequenceElem = header.getFirstChildWithName(new QName(Sandesha2Constants.SPEC_2005_02.NS_URI,
- Sandesha2Constants.WSRM_COMMON.SEQUENCE));
-
- if (sequenceElem == null)
- sequenceElem = header.getFirstChildWithName(new QName(Sandesha2Constants.SPEC_2006_08.NS_URI,
- Sandesha2Constants.WSRM_COMMON.SEQUENCE));
- }
-
- if (sequenceElem != null)
- rmGlobalMsg = true;
- if (Sandesha2Constants.SPEC_2005_02.Actions.ACTION_SEQUENCE_ACKNOWLEDGEMENT.equals(action))
- rmGlobalMsg = true;
-
- if (Sandesha2Constants.SPEC_2005_02.Actions.ACTION_CREATE_SEQUENCE_RESPONSE.equals(action))
- rmGlobalMsg = true;
-
- if (Sandesha2Constants.SPEC_2005_02.Actions.ACTION_TERMINATE_SEQUENCE.equals(action))
- rmGlobalMsg = true;
-
- if (Sandesha2Constants.SPEC_2006_08.Actions.ACTION_SEQUENCE_ACKNOWLEDGEMENT.equals(action))
- rmGlobalMsg = true;
-
- if (Sandesha2Constants.SPEC_2006_08.Actions.ACTION_TERMINATE_SEQUENCE.equals(action))
- rmGlobalMsg = true;
-
- if (Sandesha2Constants.SPEC_2006_08.Actions.ACTION_CREATE_SEQUENCE_RESPONSE.equals(action))
- rmGlobalMsg = true;
-
- return rmGlobalMsg;
- }
-
- // RM will retry sending the message even if a fault arrive for following message types.
- public static boolean isRetriableOnFaults(MessageContext msgCtx) {
- boolean rmGlobalMsg = false;
-
- String action = msgCtx.getWSAAction();
-
-
- if (Sandesha2Constants.SPEC_2005_02.Actions.ACTION_CREATE_SEQUENCE.equals(action))
- rmGlobalMsg = true;
-
- if (Sandesha2Constants.SPEC_2006_08.Actions.ACTION_CREATE_SEQUENCE.equals(action))
- rmGlobalMsg = true;
-
- return rmGlobalMsg;
- }
-
public static MessageContext createNewRelatedMessageContext(RMMsgContext referenceRMMessage, AxisOperation operation)
throws SandeshaException {
try {
@@ -668,67 +581,6 @@
return sequeunceID;
}
- public static QName getQNameFromString(String qnameStr) throws SandeshaException {
- String[] parts = qnameStr.split(Sandesha2Constants.QNAME_SEPERATOR);
- if (!(parts.length == 3))
- throw new SandeshaException(SandeshaMessageHelper.getMessage(
- SandeshaMessageKeys.invalidQName));
-
- if (parts[0].equals(Sandesha2Constants.VALUE_NONE))
- parts[0] = null;
-
- if (parts[1].equals(Sandesha2Constants.VALUE_NONE))
- parts[1] = null;
-
- if (parts[2].equals(Sandesha2Constants.VALUE_NONE))
- parts[2] = null;
-
- if (parts[0].equals(Sandesha2Constants.VALUE_EMPTY))
- parts[0] = "";
-
- if (parts[1].equals(Sandesha2Constants.VALUE_EMPTY))
- parts[1] = "";
-
- if (parts[2].equals(Sandesha2Constants.VALUE_EMPTY))
- parts[2] = "";
-
- String namespace = parts[0];
- String localPart = parts[1];
- String prefix = parts[2];
-
- QName name = new QName(namespace, localPart, prefix);
- return name;
- }
-
- public static String getStringFromQName(QName name) {
- String localPart = name.getLocalPart();
- String namespace = name.getNamespaceURI();
- String prefix = name.getPrefix();
-
- if (localPart == null)
- localPart = Sandesha2Constants.VALUE_NONE;
-
- if (namespace == null)
- namespace = Sandesha2Constants.VALUE_NONE;
-
- if (prefix == null)
- prefix = Sandesha2Constants.VALUE_NONE;
-
- if ("".equals(localPart))
- localPart = Sandesha2Constants.VALUE_EMPTY;
-
- if ("".equals(namespace))
- namespace = Sandesha2Constants.VALUE_EMPTY;
-
- if ("".equals(prefix))
- prefix = Sandesha2Constants.VALUE_EMPTY;
-
- String QNameStr = namespace + Sandesha2Constants.QNAME_SEPERATOR + localPart
- + Sandesha2Constants.QNAME_SEPERATOR + prefix;
-
- return QNameStr;
- }
-
public static String getExecutionChainString(ArrayList executionChain) {
Iterator iter = executionChain.iterator();
@@ -740,17 +592,6 @@
}
return executionChainStr;
- }
-
- public static void printSOAPEnvelope(SOAPEnvelope envelope, OutputStream out) throws SandeshaException {
- try {
- XMLStreamWriter writer = XMLOutputFactory.newInstance().createXMLStreamWriter(out);
- envelope.serialize(writer);
- } catch (XMLStreamException e) {
- throw new SandeshaException(e.getMessage());
- } catch (FactoryConfigurationError e) {
- throw new SandeshaException(e.getMessage());
- }
}
public static boolean isAllMsgsAckedUpto(long highestInMsgNo, String internalSequenceId,
Modified: webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/WSRMMessageSender.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/WSRMMessageSender.java?view=diff&rev=504544&r1=504543&r2=504544
==============================================================================
--- webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/WSRMMessageSender.java (original)
+++ webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/WSRMMessageSender.java Wed Feb 7 05:50:06 2007
@@ -121,7 +121,6 @@
//setting msg context properties
rmMsgCtx.setProperty(Sandesha2Constants.MessageContextProperties.SEQUENCE_ID, outSequenceID);
rmMsgCtx.setProperty(Sandesha2Constants.MessageContextProperties.INTERNAL_SEQUENCE_ID, internalSequenceID);
- rmMsgCtx.setProperty(Sandesha2Constants.MessageContextProperties.SEQUENCE_PROPERTY_KEY , sequenceKey);
rmMsgCtx.addSOAPEnvelope();
---------------------------------------------------------------------
To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org