You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by de...@apache.org on 2006/03/03 06:28:18 UTC

svn commit: r382669 - in /webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description: AxisOperation.java AxisService.java AxisService2WOM.java

Author: deepal
Date: Thu Mar  2 21:28:16 2006
New Revision: 382669

URL: http://svn.apache.org/viewcvs?rev=382669&view=rev
Log:
- fixing 480
- fixing module engagement problem for operation
-fixing 464

Modified:
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisOperation.java
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService.java
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService2WOM.java

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisOperation.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisOperation.java?rev=382669&r1=382668&r2=382669&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisOperation.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisOperation.java Thu Mar  2 21:28:16 2006
@@ -11,6 +11,7 @@
 import org.apache.axis2.engine.AxisError;
 import org.apache.axis2.engine.MessageReceiver;
 import org.apache.axis2.i18n.Messages;
+import org.apache.axis2.modules.Module;
 import org.apache.axis2.phaseresolver.PhaseResolver;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -123,6 +124,10 @@
         }
         PhaseResolver phaseResolver = new PhaseResolver(axisConfig);
         phaseResolver.engageModuleToOperation(this, moduleref);
+        Module module = moduleref.getModule();
+        if (module != null) {
+            module.engageNotify(this);
+        }
 
         if (needToadd) {
             engagedModules.add(moduleref);
@@ -157,6 +162,10 @@
             if (service.getOperation(axisOperation.getName()) == null) {
                 // this opration is a control operation.
                 axisOperation.setControlOperation(true);
+                Module moduleclazz = module.getModule();
+                if (moduleclazz != null) {
+                    moduleclazz.engageNotify(axisOperation);
+                }
                 phaseResolver.engageModuleToOperation(axisOperation, module);
                 ops.add(axisOperation);
             }

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService.java?rev=382669&r1=382668&r2=382669&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService.java Thu Mar  2 21:28:16 2006
@@ -203,11 +203,31 @@
                         + module.getName().getLocalPart());
             }
         }
-
-//        operations.put(axisOperation.getName(), axisOperation);
+        if (axisOperation.getMessageReceiver() == null) {
+            axisOperation.setMessageReceiver(
+                    loadDefaultMessageReceiver(axisOperation.getMessageExchangePattern(), this));
+        }
         addChild(axisOperation);
         operationsAliasesMap.put(axisOperation.getName().getLocalPart(), axisOperation);
     }
+
+
+    private MessageReceiver loadDefaultMessageReceiver(String mepURL, AxisService service) {
+        MessageReceiver messageReceiver;
+        if (mepURL == null) {
+            mepURL = WSDLConstants.MEP_URI_IN_OUT;
+        }
+        if (service != null) {
+            messageReceiver = service.getMessageReceiver(mepURL);
+            if (messageReceiver != null)
+                return messageReceiver;
+        }
+        if (getParent() != null && getParent().getParent() != null) {
+            return ((AxisConfiguration) getParent().getParent()).getMessageReceiver(mepURL);
+        }
+        return null;
+    }
+
 
     /**
      * Gets a copy from module operation.

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService2WOM.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService2WOM.java?rev=382669&r1=382668&r2=382669&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService2WOM.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisService2WOM.java Thu Mar  2 21:28:16 2006
@@ -321,7 +321,12 @@
                     .getExtensionElement(ExtensionConstants.SOAP_11_OPERATION);
             soapOpimpl.setStyle(style);
             // to do heve to set a proper SOAPAction
-            soapOpimpl.setSoapAction(opName);
+            ArrayList wsamappingList = axisOperation.getWsamappingList();
+            if (wsamappingList != null && wsamappingList.size() > 0) {
+                soapOpimpl.setSoapAction((String) wsamappingList.get(0));
+            } else {
+                soapOpimpl.setSoapAction(opName);
+            }
             bindingoperation.addExtensibilityElement(soapOpimpl);
 
             if (inMessage != null) {