Author: chamikara
Date: Tue Aug 22 01:11:08 2006
New Revision: 433558
URL: http://svn.apache.org/viewvc?rev=433558&view=rev
Log:
Corrected to start the client side async listner when client side async
control messages are expected.
Removed the restricion of having to mention the TransportInProtocol for
non-InOnly meps.
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/SandeshaMessageKeys.java
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/resource.properties
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SequenceManager.java
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/SandeshaMessageKeys.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/SandeshaMessageKeys.java?rev=433558&r1=433557&r2=433558&view=diff
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/SandeshaMessageKeys.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/SandeshaMessageKeys.java
Tue Aug 22 01:11:08 2006
@@ -219,5 +219,7 @@
public static final String secureDummyNoProof="secureDummyNoProof";
public static final String secureDummyNoToken="secureDummyNoToken";
public static final String secureDummyNoSTR ="secureDummyNoSTR";
-
+
+ public static final String cannotFindTransportInDesc =
"cannotFindTransportInDesc";
+
}
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/resource.properties
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/resource.properties?rev=433558&r1=433557&r2=433558&view=diff
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/resource.properties
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/i18n/resource.properties
Tue Aug 22 01:11:08 2006
@@ -80,7 +80,7 @@
cannotInnitMessage=Sandesha2 Internal error: cannot initialize the message.
propertyInvalidValue=Sandesha2 Internal error: property {0} contains an
invalid value.
couldNotCopyParameters=Could not copy parameters when creating the new RM
Message.
-
+cannotFindTransportInDesc=Cannot find the transport in description {0} in the
ConfigurationContext.
#-------------------------------------
#
Modified:
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SequenceManager.java
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SequenceManager.java?rev=433558&r1=433557&r2=433558&view=diff
==============================================================================
---
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SequenceManager.java
(original)
+++
webservices/sandesha/trunk/java/src/org/apache/sandesha2/util/SequenceManager.java
Tue Aug 22 01:11:08 2006
@@ -20,6 +20,7 @@
import org.apache.axis2.context.OperationContextFactory;
import org.apache.axis2.description.TransportInDescription;
import org.apache.axis2.engine.ListenerManager;
+import org.apache.axis2.i18n.Messages;
import org.apache.axis2.wsdl.WSDLConstants.WSDL20_2004Constants;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -320,6 +321,7 @@
SandeshaUtil.startSenderForTheSequence(configurationContext,
internalSequenceId);
+
updateClientSideListnerIfNeeded(firstAplicationMsgCtx,
anonymousURI);
}
@@ -344,16 +346,29 @@
startListnerForAsyncAcks = true;
}
- if (mep != null &&
!WSDL20_2004Constants.MEP_URI_OUT_ONLY.equals(mep)) {
- // starting listner for the async createSeqResponse &
terminateSer
- // messages.
- startListnerForAsyncControlMsgs = true;
- }
-
try {
- if ((startListnerForAsyncAcks ||
startListnerForAsyncControlMsgs) && transportInProtocol == null)
- throw new
SandeshaException(SandeshaMessageHelper
+ if ((startListnerForAsyncAcks ||
startListnerForAsyncControlMsgs) ) {
+
+ if (transportInProtocol == null)
+ throw new
SandeshaException(SandeshaMessageHelper
.getMessage(SandeshaMessageKeys.cannotStartListenerForIncommingMsgs));
+
+ //TODO following code was taken from
ServiceContext.gegMyEPR method.
+ // When a listner-starting method
becomes available from Axis2, use that.
+ ConfigurationContext configctx =
messageContext.getConfigurationContext();
+ ListenerManager lm =
configctx.getListenerManager();
+ if (!lm.isListenerRunning(transportInProtocol))
{
+ TransportInDescription trsin =
configctx.getAxisConfiguration().
+ getTransportIn(new QName(transportInProtocol));
+ if (trsin != null) {
+ lm.addListener(trsin, false);
+ } else {
+ String message =
SandeshaMessageHelper.getMessage(
+
SandeshaMessageKeys.cannotFindTransportInDesc,transportInProtocol);
+ throw new AxisFault(message);
+ }
+ }
+ }
} catch (AxisFault e) {
String message = SandeshaMessageHelper.getMessage(
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]