Author: mckierna
Date: Wed Jun 25 04:07:28 2008
New Revision: 671508
URL: http://svn.apache.org/viewvc?rev=671508&view=rev
Log:
Allow for non reliable messages and further bug with replay model
Modified:
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/Sandesha2Constants.java
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java
Modified: webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/Sandesha2Constants.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/Sandesha2Constants.java?rev=671508&r1=671507&r2=671508&view=diff
==============================================================================
--- webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/Sandesha2Constants.java (original)
+++ webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/Sandesha2Constants.java Wed Jun 25 04:07:28 2008
@@ -586,6 +586,8 @@
static final String MSG_NO_OF_IN_MSG = "MsgNoOfInMsg";
+ static final String FORCE_ALLOW_UNRELIABLE_MSG = "forceAllowUnreliableMessage";
+
static final String MAKE_CONNECTION_RESPONSE = "MakeConnectionResponse";
static final String SERVICE_CONTAINS_OUT_IN_MEPS = "ServiceContainsOutInMeps";
Modified: webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java?rev=671508&r1=671507&r2=671508&view=diff
==============================================================================
--- webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java (original)
+++ webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/handlers/SandeshaInHandler.java Wed Jun 25 04:07:28 2008
@@ -117,7 +117,8 @@
SandeshaPolicyBean propertyBean = SandeshaUtil
.getPropertyBean(msgCtx.getAxisOperation());
- if (propertyBean.isEnforceRM()) {
+
+ if (propertyBean.isEnforceRM() && !Boolean.valueOf((String)msgCtx.getProperty(Sandesha2Constants.FORCE_ALLOW_UNRELIABLE_MSG))) {
String message = SandeshaMessageHelper.getMessage(
SandeshaMessageKeys.rmEnforceFailure, msgCtx.getMessageID());
log.warn(message);
Modified: webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java?rev=671508&r1=671507&r2=671508&view=diff
==============================================================================
--- webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java (original)
+++ webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/msgprocessors/SequenceProcessor.java Wed Jun 25 04:07:28 2008
@@ -170,6 +170,8 @@
}
EndpointReference replyTo = rmMsgCtx.getReplyTo();
+ if (log.isDebugEnabled())
+ log.debug("SequenceProcessor::processReliableMessage replyTo = " + replyTo);
// updating the Highest_In_Msg_No property which gives the highest
// message number retrieved from this sequence.
@@ -236,8 +238,11 @@
//replied), the client may take this as a InOnly message and may avoid looking for the application
//response if using replay.
//Therefore we only send acks back in the anon InOnly case.
- if (WSDLConstants.MEP_CONSTANT_IN_ONLY == rmMsgCtx.getMessageContext().getAxisOperation().getAxisSpecificMEPConstant() &&
- (replyTo==null || replyTo.getAddress()==null || replyTo.isWSAddressingAnonymous() )) {
+ int msgExchangePattern = rmMsgCtx.getMessageContext().getAxisOperation().getAxisSpecificMEPConstant();
+ if (log.isDebugEnabled())
+ log.debug("SequenceProcessor:: mep= " + msgExchangePattern);
+ if (WSDLConstants.MEP_CONSTANT_IN_ONLY == msgExchangePattern &&
+ (replyTo==null || replyTo.getAddress()==null || replyTo.isWSAddressingAnonymous() || replyTo.hasNoneAddress())) {
sendAckIfNeeded(bean, sequenceId, rmMsgCtx, storageManager, true, acksTo.hasAnonymousAddress());
}
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.