You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by de...@apache.org on 2006/01/03 10:53:59 UTC

svn commit: r365593 [1/2] - in /webservices/axis2/trunk/java/modules: codegen/src/org/apache/axis2/rpc/client/ codegen/src/org/apache/axis2/wsdl/template/java/ core/src/org/apache/axis2/client/ core/src/org/apache/axis2/deployment/ core/src/org/apache/...

Author: deepal
Date: Tue Jan  3 01:52:10 2006
New Revision: 365593

URL: http://svn.apache.org/viewcvs?rev=365593&view=rev
Log:
I just fixed compile errors , and I did not check the build yet , I will do that soon and let u guys know that.
We are very sorry the difficulties that you have met :(

some module version stuff , sorry I have not completed that :(

Added:
    webservices/axis2/trunk/java/modules/core/test-resources/deployment/moduleVersion/
    webservices/axis2/trunk/java/modules/core/test-resources/deployment/moduleVersion/Test1/
    webservices/axis2/trunk/java/modules/core/test-resources/deployment/moduleVersion/Test1/axis2.xml
    webservices/axis2/trunk/java/modules/core/test/org/apache/axis2/deployment/ModuleversionTest.java
Modified:
    webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/client/RPCServiceClient.java
    webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/wsdl/template/java/InterfaceImplementationTemplate.xsl
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/client/ServiceClient.java
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/AxisConfigBuilder.java
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentConstants.java
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentEngine.java
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/ServiceBuilder.java
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisServiceGroup.java
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisConfiguration.java
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/transport/http/ListingAgent.java
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java
    webservices/axis2/trunk/java/modules/integration/itest/org/apache/axis2/rest/RESTBasedEchoRawXMLTest.java
    webservices/axis2/trunk/java/modules/integration/itest/test/interop/mtom/MTOMEchoTestMultipleTest.java
    webservices/axis2/trunk/java/modules/integration/itest/test/interop/mtom/MTOMEchoTestSingleTest.java
    webservices/axis2/trunk/java/modules/integration/src/test/interop/whitemesa/round4/complex/EchoBlockingClient.java
    webservices/axis2/trunk/java/modules/integration/src/test/interop/whitemesa/round4/simple/EchoBlockingClient.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CallUnregisteredServiceTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CharactersetEncodingTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CommonsHTTPEchoRawXMLTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawRuntimeProxyTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLChunkedTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLLoadTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLMultipleTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLOnTwoChannelsSyncTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLOnTwoChannelsTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/HandlerFailureTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/MessageContextInjectionTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/OneWayRawXMLTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/ServiceDispatchingTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/ServiceGroupContextTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/util/InvokerThread.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/util/profiling/ContextMemoryHandlingUtil.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/groovy/GroovyServiceTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/integration/UtilServer.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/jms/JMSEchoRawXMLTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/mail/MailCharSetEncodingTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/mail/MailRequestResponseRawXMLTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/mail/MailetRequestResponseRawXMLTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/mtom/EchoRawMTOMCommonsChunkingTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/mtom/EchoRawMTOMLoadTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/mtom/EchoRawMTOMTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/mtom/EchoRawMTOMToBase64Test.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/rpc/MultirefTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/rpc/RPCCallTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/tcp/TCPEchoRawXMLTest.java
    webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/tcp/TCPTwoChannelEchoRawXMLTest.java
    webservices/axis2/trunk/java/modules/samples/src/sample/amazon/amazonSimpleQueueService/util/SimpleQueueCreateQueueCallbackHandler.java
    webservices/axis2/trunk/java/modules/samples/src/sample/amazon/amazonSimpleQueueService/util/SimpleQueueDeleteQueueCallbackHandler.java
    webservices/axis2/trunk/java/modules/samples/src/sample/amazon/amazonSimpleQueueService/util/SimpleQueueEnqueueCallbackHandler.java
    webservices/axis2/trunk/java/modules/samples/src/sample/amazon/amazonSimpleQueueService/util/SimpleQueueListMyQueuesCallbackHandler.java
    webservices/axis2/trunk/java/modules/samples/src/sample/amazon/amazonSimpleQueueService/util/SimpleQueueReadCallbackHandler.java
    webservices/axis2/trunk/java/modules/samples/src/sample/amazon/search/ClientCallbackHandler.java
    webservices/axis2/trunk/java/modules/samples/src/sample/google/search/ClientCallbackHandler.java
    webservices/axis2/trunk/java/modules/samples/src/sample/google/spellcheck/FormModel.java
    webservices/axis2/trunk/java/modules/samples/src/userguide/clients/EchoNonBlockingClient.java
    webservices/axis2/trunk/java/modules/samples/src/userguide/clients/EchoNonBlockingDualClient.java

Modified: webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/client/RPCServiceClient.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/client/RPCServiceClient.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/client/RPCServiceClient.java (original)
+++ webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/client/RPCServiceClient.java Tue Jan  3 01:52:10 2006
@@ -4,8 +4,8 @@
 import org.apache.axis2.client.ServiceClient;
 import org.apache.axis2.client.async.Callback;
 import org.apache.axis2.context.ConfigurationContext;
-import org.apache.axis2.context.ServiceContext;
 import org.apache.axis2.databinding.utils.BeanUtil;
+import org.apache.axis2.description.AxisService;
 import org.apache.axis2.om.OMElement;
 
 import javax.xml.namespace.QName;
@@ -32,16 +32,12 @@
 
 public class RPCServiceClient extends ServiceClient {
 
-    public RPCServiceClient(ConfigurationContext configContext) throws AxisFault {
-        super(configContext);
+    public RPCServiceClient(ConfigurationContext configContext, AxisService service) throws AxisFault {
+        super(configContext, service);
     }
 
     public RPCServiceClient() throws AxisFault {
         super();
-    }
-
-    public RPCServiceClient(ServiceContext serviceContext) {
-        super(serviceContext);
     }
 
     public RPCServiceClient(ConfigurationContext configContext,

Modified: webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/wsdl/template/java/InterfaceImplementationTemplate.xsl
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/wsdl/template/java/InterfaceImplementationTemplate.xsl?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/wsdl/template/java/InterfaceImplementationTemplate.xsl (original)
+++ webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/wsdl/template/java/InterfaceImplementationTemplate.xsl Tue Jan  3 01:52:10 2006
@@ -279,7 +279,7 @@
                             java.lang.Object object = fromOM(getElement(result.getResponseEnvelope(),"<xsl:value-of select="$style"/>"),<xsl:value-of select="$outputtype"/>.class);
                             callback.receiveResult<xsl:value-of select="@name"/>((<xsl:value-of select="$outputtype"/>)object);
                             }
-                            public void reportError(java.lang.Exception e){
+                            public void onError(java.lang.Exception e){
                             callback.receiveError<xsl:value-of select="@name"/>(e);
                             }
                             }

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/client/ServiceClient.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/client/ServiceClient.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/client/ServiceClient.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/client/ServiceClient.java Tue Jan  3 01:52:10 2006
@@ -16,8 +16,6 @@
 import org.apache.axis2.soap.SOAPHeader;
 import org.apache.axis2.util.CallbackReceiver;
 import org.apache.axis2.util.UUIDGenerator;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
 import org.apache.wsdl.WSDLConstants;
 
 import javax.xml.namespace.QName;
@@ -30,8 +28,6 @@
  */
 public class ServiceClient {
 
-    private Log log = LogFactory.getLog(getClass());
-
     // service and operation names used for anonymously stuff
     private static final String ANON_SERVICE = "__ANONYMOUS_SERVICE__";
 
@@ -62,13 +58,6 @@
     // list of headers to be sent with the simple APIs
     ArrayList headers;
 
-    // to set the name of the operation to be invoked , and this is usefull if
-    // the user
-    // try to reuse same ServiceClent to invoke more than one operation in the
-    // service ,
-    // in that case he can set the current operation name and invoke that.
-    private QName currentOperationName = null;
-
     private CallbackReceiver callbackReceiver;
 
     /**
@@ -76,61 +65,58 @@
      * If this service is already in the world that's handed in (in the form of
      * a ConfigurationContext) then I will happily work in it. If not I will
      * create a small little virtual world and live there.
-     * 
-     * @param configContext
-     *            The configuration context under which this service lives (may
-     *            be null, in which case a new local one will be created)
-     * @param axisService
-     *            The service for which this is the client. Must NOT be null.
-     * @throws AxisFault
-     *             if something goes wrong while creating a config context (if
-     *             needed)
+     *
+     * @param configContext The configuration context under which this service lives (may
+     *                      be null, in which case a new local one will be created)
+     * @param axisService   The service for which this is the client.
+     * @throws AxisFault if something goes wrong while creating a config context (if
+     *                   needed)
      */
     public ServiceClient(ConfigurationContext configContext,
-            AxisService axisService) throws AxisFault {
+                         AxisService axisService) throws AxisFault {
         // create a config context if needed
         this.configContext = (configContext != null) ? configContext
                 : new ConfigurationContextFactory()
-                        .buildConfigurationContext(null);
+                .buildConfigurationContext(null);
 
         // save the service and axisConfig
-        this.axisService = axisService;
+        if (axisService == null) {
+            this.axisService = createAnonymousService();
+        } else {
+            this.axisService = axisService;
+        }
+
         this.axisConfig = this.configContext.getAxisConfiguration();
 
         // add the service to the config context if it isn't in there already
-        if (axisConfig.getService(axisService.getName()) == null) {
-            axisConfig.addService(axisService);
+        if (axisConfig.getService(this.axisService.getName()) == null) {
+            axisConfig.addService(this.axisService);
         }
 
         // create a service context for myself: create a new service group
         // context and then get the service context for myself as I'll need that
         // later for stuff that I gotta do
         ServiceGroupContext sgc = new ServiceGroupContext(configContext,
-                axisService.getParent());
-        this.serviceContext = sgc.getServiceContext(axisService);
+                this.axisService.getParent());
+        this.serviceContext = sgc.getServiceContext(this.axisService);
     }
 
     /**
      * Create a service client for WSDL service identified by the QName of the
      * wsdl:service element in a WSDL document.
-     * 
-     * @param configContext
-     *            The configuration context under which this service lives (may
-     *            be null, in which case a new local one will be created) *
-     * @param wsdlURL
-     *            The URL of the WSDL document to read
-     * @param wsdlServiceName
-     *            The QName of the WSDL service in the WSDL document to create a
-     *            client for
-     * @param portName
-     *            The name of the WSDL 1.1 port to create a client for. May be
-     *            null (if WSDL 2.0 is used or if only one port is there). .
-     * @throws AxisFault
-     *             if something goes wrong while creating a config context (if
-     *             needed)
+     *
+     * @param configContext   The configuration context under which this service lives (may
+     *                        be null, in which case a new local one will be created) *
+     * @param wsdlURL         The URL of the WSDL document to read
+     * @param wsdlServiceName The QName of the WSDL service in the WSDL document to create a
+     *                        client for
+     * @param portName        The name of the WSDL 1.1 port to create a client for. May be
+     *                        null (if WSDL 2.0 is used or if only one port is there). .
+     * @throws AxisFault if something goes wrong while creating a config context (if
+     *                   needed)
      */
     public ServiceClient(ConfigurationContext configContext, URL wsdlURL,
-            QName wsdlServiceName, String portName) throws AxisFault {
+                         QName wsdlServiceName, String portName) throws AxisFault {
         // TODO: Srinath to write this code :)
         throw new UnsupportedOperationException(
                 "ServiceClient currently does not support direct WSDL construction");
@@ -141,12 +127,17 @@
      * necessary information.
      */
     public ServiceClient() throws AxisFault {
-        this(null, new AxisService(ANON_SERVICE));
+        this(null, null);
+
 
+    }
+
+    private AxisService createAnonymousService() throws AxisFault {
         // now add anonymous operations to the axis service for use with the
         // shortcut client API. NOTE: We only add the ones we know we'll use
         // later in the convenience API; if you use
         // this constructor then you can't expect any magic!
+        AxisService axisService = new AxisService(ANON_SERVICE);
         PhasesInfo phasesInfo = axisConfig.getPhasesInfo();
 
         RobustOutOnlyAxisOperation robustoutoonlyOperation = new RobustOutOnlyAxisOperation(
@@ -166,6 +157,7 @@
         // setting operation default chains
         phasesInfo.setOperationPhases(outInOperation);
         axisService.addOperation(outInOperation);
+        return axisService;
     }
 
     /**
@@ -177,7 +169,7 @@
 
     /**
      * Get the client configuration from this service interaction.
-     * 
+     *
      * @return set of options set earlier.
      */
     public Options getOptions() {
@@ -188,9 +180,8 @@
      * Add an XML element as a header to be sent with interactions. This allows
      * users to go a bit beyond the dirt simple XML in/out pattern using this
      * simplified API. A header
-     * 
-     * @param header
-     *            The header to be added for interactions. Must not be null.
+     *
+     * @param header The header to be added for interactions. Must not be null.
      */
     public void addHeader(OMElement header) {
         if (headers == null) {
@@ -202,7 +193,7 @@
     /**
      * Add a simple header consisting of some text (and a header name; duh) to
      * be sent with interactions.
-     * 
+     *
      * @param headerName
      * @param headerText
      */
@@ -219,12 +210,10 @@
      * possibly receive a fault. If you need more control over this interaction
      * then you need to create a client (@see createClient()) for the operation
      * and use that instead.
-     * 
-     * @param elem
-     *            The XML to send
-     * @throws AxisFault
-     *             if something goes wrong while sending it or if a fault is
-     *             received in response (per the Robust In-Only MEP).
+     *
+     * @param elem The XML to send
+     * @throws AxisFault if something goes wrong while sending it or if a fault is
+     *                   received in response (per the Robust In-Only MEP).
      */
     public void sendRobust(OMElement elem) throws AxisFault {
         sendRobust(ANON_ROBUST_OUT_ONLY_OP, elem);
@@ -236,14 +225,11 @@
      * possibly receive a fault under the guise of a specific operation. If you
      * need more control over this interaction then you need to create a client
      * (@see createClient()) for the operation and use that instead.
-     * 
-     * @param operation
-     *            The name of the operation to use. Must NOT be null.
-     * @param elem
-     *            The XML to send
-     * @throws AxisFault
-     *             if something goes wrong while sending it or if a fault is
-     *             received in response (per the Robust In-Only MEP).
+     *
+     * @param operation The name of the operation to use. Must NOT be null.
+     * @param elem      The XML to send
+     * @throws AxisFault if something goes wrong while sending it or if a fault is
+     *                   received in response (per the Robust In-Only MEP).
      */
     public void sendRobust(QName operation, OMElement elem) throws AxisFault {
         // look up the appropriate axisop and create the client
@@ -267,11 +253,9 @@
      * a service operation who's MEP is In-Only. That is, there is no
      * opportunity to get an error from the service via this API; one may still
      * get client-side errors, such as host unknown etc.
-     * 
-     * @param elem
-     *            The XML element to send to the service
-     * @throws AxisFault
-     *             If something goes wrong trying to send the XML
+     *
+     * @param elem The XML element to send to the service
+     * @throws AxisFault If something goes wrong trying to send the XML
      */
     public void fireAndForget(OMElement elem) throws AxisFault {
         fireAndForget(ANON_OUT_ONLY_OP, elem);
@@ -376,7 +360,7 @@
     }
 
     public void sendReceiveNonblocking(QName operation, OMElement elem,
-            Callback callback) throws AxisFault {
+                                       Callback callback) throws AxisFault {
         MessageContext mc = new MessageContext();
         fillSoapEnvelope(mc, elem);
 
@@ -422,13 +406,11 @@
      * you're doing and need the full capabilities of Axis2's client
      * architecture. This is meant for people with deep skin and not the light
      * user.
-     * 
-     * @param operation
-     *            The QName of the operation to create a client for.
+     *
+     * @param operation The QName of the operation to create a client for.
      * @return a MEP client configured to talk to the given operation or null if
      *         the operation name is not found.
-     * @throws AxisFault
-     *             if the operation is not found or something else goes wrong
+     * @throws AxisFault if the operation is not found or something else goes wrong
      */
     public OperationClient createClient(QName operation) throws AxisFault {
         AxisOperation axisOp = axisService.getOperation(operation);
@@ -441,7 +423,7 @@
     /**
      * Return the SOAP factory to use depending on what options have been set
      * (or default to SOAP 1.1)
-     * 
+     *
      * @return the SOAP factory
      */
     private SOAPFactory getSOAPFactory() {
@@ -454,7 +436,7 @@
         }
     }
 
-    private AxisService getAxisService() throws AxisFault {
+    public AxisService getAxisService() {
         return axisService;
     }
 
@@ -473,7 +455,7 @@
     /**
      * This will close the out put stream or , and remove entry from waiting
      * queue of the transport Listener queue
-     * 
+     *
      * @throws AxisFault
      */
     public void finalizeInvoke() throws AxisFault {
@@ -486,11 +468,9 @@
 
     /**
      * Engage a module for this service client.
-     * 
-     * @param moduleName
-     *            Name of the module to engage
-     * @throws AxisFault
-     *             if something goes wrong
+     *
+     * @param moduleName Name of the module to engage
+     * @throws AxisFault if something goes wrong
      */
     public void engageModule(QName moduleName) throws AxisFault {
         axisService.engageModule(axisConfig.getModule(moduleName), axisConfig);

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/AxisConfigBuilder.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/AxisConfigBuilder.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/AxisConfigBuilder.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/AxisConfigBuilder.java Tue Jan  3 01:52:10 2006
@@ -42,13 +42,11 @@
 
 public class AxisConfigBuilder extends DescriptionBuilder {
 
-    private AxisConfiguration axisConfiguration;
     private DeploymentEngine engine;
 
     public AxisConfigBuilder(InputStream serviceInputStream, DeploymentEngine engine,
                              AxisConfiguration axisConfiguration) {
         super(serviceInputStream, axisConfiguration);
-        this.axisConfiguration = axisConfiguration;
         this.engine = engine;
     }
 
@@ -60,7 +58,7 @@
             // Processing service level parameters
             Iterator itr = config_element.getChildrenWithName(new QName(TAG_PARAMETER));
 
-            processParameters(itr, axisConfiguration, axisConfiguration);
+            processParameters(itr, axisConfig, axisConfig);
 
             // process MessageReciver
             OMElement messageReceiver = config_element.getFirstChildWithName(new QName(TAG_MESSAGE_RECEIVERS));
@@ -100,31 +98,40 @@
 
             Iterator moduleConfigs = config_element.getChildrenWithName(new QName(TAG_MODULE_CONFIG));
 
-            processModuleConfig(moduleConfigs, axisConfiguration, axisConfiguration);
+            processModuleConfig(moduleConfigs, axisConfig, axisConfig);
 
             // setting host configuration
             OMElement hostElement = config_element.getFirstChildWithName(new QName(TAG_HOST_CONFIG));
 
             if (hostElement != null) {
-                processHostCongiguration(hostElement, axisConfiguration);
+                processHostCongiguration(hostElement, axisConfig);
             }
 
             // setting the PolicyInclude
             PolicyInclude policyInclude = new PolicyInclude();
-            axisConfiguration.setPolicyInclude(policyInclude);
+            axisConfig.setPolicyInclude(policyInclude);
 
             // processing <wsp:Policy> .. </..> elements
-            Iterator policyElements = config_element.getChildrenWithName(new QName(POLICY_NS_URI, TAG_POLICY));
+            Iterator policyElements = config_element.getChildrenWithName(new QName(POLICY_NS_URI,
+                    TAG_POLICY));
 
             if (policyElements != null) {
-                processPolicyElements(policyElements, axisConfiguration.getPolicyInclude());
+                processPolicyElements(policyElements, axisConfig.getPolicyInclude());
             }
 
             // processing <wsp:PolicyReference> .. </..> elements
-            Iterator policyRefElements = config_element.getChildrenWithName(new QName(POLICY_NS_URI, TAG_POLICY_REF));
+            Iterator policyRefElements = config_element.getChildrenWithName(new QName(POLICY_NS_URI,
+                    TAG_POLICY_REF));
 
             if (policyRefElements != null) {
-                processPolicyRefElements(policyElements, axisConfiguration.getPolicyInclude());
+                processPolicyRefElements(policyElements, axisConfig.getPolicyInclude());
+            }
+
+            //to process default module versions
+            OMElement defaultModuleVerionElement = config_element.getFirstChildWithName(new QName(
+                    TAG_DEFAULT_MODULE_VERSION));
+            if (defaultModuleVerionElement != null) {
+                processDefaultModuleVersions(defaultModuleVerionElement);
             }
 
         } catch (XMLStreamException e) {
@@ -218,11 +225,11 @@
                 // Processing service level parameters
                 Iterator itr = observerelement.getChildrenWithName(new QName(TAG_PARAMETER));
 
-                processParameters(itr, observer, axisConfiguration);
+                processParameters(itr, observer, axisConfig);
 
                 // initialization
                 observer.init();
-                axisConfiguration.addObservers(observer);
+                axisConfig.addObservers(observer);
             } catch (ClassNotFoundException e) {
                 throw new DeploymentException(e);
             } catch (IllegalAccessException e) {
@@ -256,10 +263,10 @@
 
             while (handlers.hasNext()) {
                 OMElement omElement = (OMElement) handlers.next();
-                HandlerDescription handler = processHandler(omElement, axisConfiguration);
+                HandlerDescription handler = processHandler(omElement, axisConfig);
 
                 handler.getRules().setPhaseName(phaseName);
-                Utils.loadHandler(axisConfiguration.getSystemClassLoader(), handler);
+                Utils.loadHandler(axisConfig.getSystemClassLoader(), handler);
 
                 try {
                     phase.addHandler(handler);
@@ -312,8 +319,8 @@
                 throw new DeploymentException("Module vresion can not be null in side" +
                         " default module vresion element ");
             }
+            axisConfig.addDefaultModuleVersion(name, defaultVeriosn);
         }
-
     }
 
     private void processTransportReceivers(Iterator trs_senders) throws DeploymentException {
@@ -359,7 +366,7 @@
                     // Processing service level parameters
                     Iterator itr = transport.getChildrenWithName(new QName(TAG_PARAMETER));
 
-                    processParameters(itr, transportIN, axisConfiguration);
+                    processParameters(itr, transportIN, axisConfig);
 
                     // process INFLOW
                     OMElement inFlow = transport.getFirstChildWithName(new QName(TAG_FLOW_IN));
@@ -373,14 +380,14 @@
                     OMElement outFlow = transport.getFirstChildWithName(new QName(TAG_FLOW_OUT));
 
                     if (outFlow != null) {
-                        transportIN.setInFlow(processFlow(outFlow, axisConfiguration));
+                        transportIN.setInFlow(processFlow(outFlow, axisConfig));
                     }
 
                     OMElement inFaultFlow =
                             transport.getFirstChildWithName(new QName(TAG_FLOW_IN_FAULT));
 
                     if (inFaultFlow != null) {
-                        transportIN.setFaultFlow(processFlow(inFaultFlow, axisConfiguration));
+                        transportIN.setFaultFlow(processFlow(inFaultFlow, axisConfig));
                     }
 
                     OMElement outFaultFlow =
@@ -393,7 +400,7 @@
                     }
 
                     // adding to axis config
-                    axisConfiguration.addTransportIn(transportIN);
+                    axisConfig.addTransportIn(transportIN);
                 } catch (AxisFault axisFault) {
                     throw new DeploymentException(axisFault);
                 }
@@ -438,7 +445,7 @@
                     // Processing service level parameters
                     Iterator itr = transport.getChildrenWithName(new QName(TAG_PARAMETER));
 
-                    processParameters(itr, transportout, axisConfiguration);
+                    processParameters(itr, transportout, axisConfig);
 
                     // process INFLOW
                     OMElement inFlow = transport.getFirstChildWithName(new QName(TAG_FLOW_IN));
@@ -452,7 +459,7 @@
                     OMElement outFlow = transport.getFirstChildWithName(new QName(TAG_FLOW_OUT));
 
                     if (outFlow != null) {
-                        transportout.setOutFlow(processFlow(outFlow, axisConfiguration));
+                        transportout.setOutFlow(processFlow(outFlow, axisConfig));
                     }
 
                     OMElement inFaultFlow =
@@ -468,11 +475,11 @@
                             transport.getFirstChildWithName(new QName(TAG_FLOW_OUT_FAULT));
 
                     if (outFaultFlow != null) {
-                        transportout.setFaultFlow(processFlow(outFaultFlow, axisConfiguration));
+                        transportout.setFaultFlow(processFlow(outFaultFlow, axisConfig));
                     }
 
                     // adding to axis config
-                    axisConfiguration.addTransportOut(transportout);
+                    axisConfig.addTransportOut(transportout);
                 } catch (ClassNotFoundException e) {
                     throw new DeploymentException(e);
                 } catch (IllegalAccessException e) {
@@ -491,7 +498,7 @@
         if (className == null) {
             return new Phase();
         }
-        Class phaseClass = axisConfiguration.getSystemClassLoader().loadClass(className);
+        Class phaseClass = axisConfig.getSystemClassLoader().loadClass(className);
         return (Phase) phaseClass.newInstance();
     }
 }

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentConstants.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentConstants.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentConstants.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentConstants.java Tue Jan  3 01:52:10 2006
@@ -53,6 +53,7 @@
     String TAG_MESSAGE_RECEIVER = "messageReceiver";
     String TAG_MESSAGE_RECEIVERS = "messageReceivers";
     String TAG_MEP = "mep";
+    String TAG_DEFAULT_MODULE_VERSION = "defaultModuleVersions";
 
     String TAG_FLOW_OUT_FAULT = "Outfaultflow";    // faultflow start tag
     String TAG_FLOW_OUT = "outflow";         // outflow start tag

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentEngine.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentEngine.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentEngine.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/DeploymentEngine.java Tue Jan  3 01:52:10 2006
@@ -28,34 +28,19 @@
 import org.apache.axis2.deployment.scheduler.SchedulerTask;
 import org.apache.axis2.deployment.util.PhasesInfo;
 import org.apache.axis2.deployment.util.Utils;
-import org.apache.axis2.description.AxisOperation;
-import org.apache.axis2.description.AxisService;
-import org.apache.axis2.description.AxisServiceGroup;
-import org.apache.axis2.description.Flow;
-import org.apache.axis2.description.ModuleDescription;
-import org.apache.axis2.description.Parameter;
+import org.apache.axis2.description.*;
 import org.apache.axis2.engine.AxisConfiguration;
 import org.apache.axis2.engine.Phase;
 import org.apache.axis2.i18n.Messages;
+import org.apache.axis2.modules.Module;
 import org.apache.axis2.phaseresolver.PhaseMetadata;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
 import javax.xml.namespace.QName;
 import javax.xml.stream.XMLStreamException;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
+import java.io.*;
+import java.util.*;
 
 public class DeploymentEngine implements DeploymentConstants {
 
@@ -169,7 +154,7 @@
         while (itr_global_modules.hasNext()) {
             QName qName = (QName) itr_global_modules.next();
 
-            serviceGroup.engageModuleToGroup(qName);
+            serviceGroup.engageModule(axisConfig.getModule(qName));
         }
 
         // module from services.xml at serviceGroup level
@@ -180,7 +165,7 @@
             ModuleDescription module = axisConfig.getModule(moduleName);
 
             if (module != null) {
-                serviceGroup.engageModuleToGroup(moduleName);
+                serviceGroup.engageModule(axisConfig.getModule(moduleName));
             } else {
                 throw new DeploymentException(
                         Messages.getMessage(
@@ -301,6 +286,13 @@
                 Utils.addFlowHandlers(faultOutFlow, moduleClassLoader);
             }
 
+            //initilization Module
+            Module module = axismodule.getModule();
+
+            if (module != null) {
+                module.init(axisConfig);
+            }
+
         } catch (AxisFault axisFault) {
             throw new DeploymentException(axisFault);
         }
@@ -795,7 +787,7 @@
 
     /**
      * Create directories for modules/services, copy configuration xml from class loader if necessary
-     * 
+     *
      * @param repositoryName
      * @param xmlFile
      * @throws DeploymentException

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/ServiceBuilder.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/ServiceBuilder.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/ServiceBuilder.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/deployment/ServiceBuilder.java Tue Jan  3 01:52:10 2006
@@ -184,7 +184,9 @@
                 throw new DeploymentException("message lebel can not be null");
             }
 
+            //TODO : fix that
             AxisMessage message = new AxisMessage();
+
             Iterator parameters = messageElement.getChildrenWithName(new QName(TAG_PARAMETER));
             
             // setting the PolicyInclude

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisServiceGroup.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisServiceGroup.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisServiceGroup.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/AxisServiceGroup.java Tue Jan  3 01:52:10 2006
@@ -125,13 +125,9 @@
         this.paramInclude.deserializeParameters(parameterElement);
     }
 
-    public void engageModuleToGroup(QName moduleName) {
-        if (moduleName == null) {
-            return;
-        }
-
+    public void engageModule(ModuleDescription module) throws AxisFault {
+        QName moduleName = module.getName();
         boolean needToadd = true;
-
         for (Iterator iterator = engagedModules.iterator(); iterator.hasNext();) {
             QName modu = (QName) iterator.next();
 
@@ -144,19 +140,13 @@
         }
 
         Iterator srevice = getServices();
-        ModuleDescription module = parent.getModule(moduleName);
-
-        if (module != null) {
-            while (srevice.hasNext()) {
-
-                // engaging each service
-                AxisService axisService = (AxisService) srevice.next();
-
-                try {
-                    axisService.engageModule(module, parent);
-                } catch (AxisFault axisFault) {
-                    log.info(axisFault.getMessage());
-                }
+        while (srevice.hasNext()) {
+            // engaging each service
+            AxisService axisService = (AxisService) srevice.next();
+            try {
+                axisService.engageModule(module, parent);
+            } catch (AxisFault axisFault) {
+                log.info(axisFault.getMessage());
             }
         }
 

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisConfiguration.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisConfiguration.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisConfiguration.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/engine/AxisConfiguration.java Tue Jan  3 01:52:10 2006
@@ -28,6 +28,7 @@
 import org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver;
 import org.apache.axis2.receivers.RawXMLINOutMessageReceiver;
 import org.apache.axis2.util.HostConfiguration;
+import org.apache.axis2.util.Utils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
@@ -44,13 +45,13 @@
     /**
      * Field modules
      */
-    private final HashMap defaultModules = new HashMap();
-
+//    private final HashMap defaultModules = new HashMap();
+//
     //to store all the availble modules (including version)
     private final HashMap allModules = new HashMap();
 
     //to store mapping between default version to module name
-//    private final HashMap
+    private final HashMap nameToverionMap = new HashMap();
 
     private final HashMap serviceGroups = new HashMap();
     private final HashMap transportsIn = new HashMap();
@@ -141,7 +142,7 @@
      */
     public void addModule(ModuleDescription module) throws AxisFault {
         module.setParent(this);
-        defaultModules.put(module.getName(), module);
+        allModules.put(module.getName(), module);
     }
 
     /**
@@ -212,9 +213,8 @@
         Iterator enModule = engagedModules.iterator();
 
         while (enModule.hasNext()) {
-            QName moduleDescription = (QName) enModule.next();
-
-            axisServiceGroup.engageModuleToGroup(moduleDescription);
+            QName moduleName = (QName) enModule.next();
+            axisServiceGroup.engageModule(getModule(moduleName));
         }
 
         serviceGroups.put(axisServiceGroup.getServiceGroupName(), axisServiceGroup);
@@ -280,47 +280,89 @@
         this.paramInclude.deserializeParameters(parameters);
     }
 
+    /**
+     * This will engage the default module version corresponding to given module name , or if the module
+     * name contains version numbre init then it will engage the corret module ,therefore both of the
+     * following two cases are valid
+     * 1. engageModule("addressing");
+     * 2. engageModule("addressing-1.23");
+     *
+     * @param moduleref
+     * @throws AxisFault
+     */
     public void engageModule(QName moduleref) throws AxisFault {
         ModuleDescription module = getModule(moduleref);
-        boolean isNewmodule = false;
-
         if (module == null) {
-            File file =
-                    new ArchiveReader().creatModuleArchivefromResource(moduleref.getLocalPart(),
-                            getRepository());
+            // there is no module found with the given name , so better check for dafult module version
+            String moduleName = moduleref.getLocalPart();
+            String defaultModuleVersion = getDefaultModuleVersion(moduleName);
+            if (defaultModuleVersion != null) {
+                QName moduleQName = Utils.getModuleName(moduleName, defaultModuleVersion);
+                module = loadModulefromResources(moduleQName.getLocalPart());
+            } else {
+                module = loadModulefromResources(moduleName);
+            }
+        }
+        engageModule(module, moduleref);
+    }
 
-            module = new DeploymentEngine().buildModule(file, this);
-            isNewmodule = true;
+    /**
+     * Engagging a module using give name and its version ID
+     *
+     * @param moduleName
+     * @param versionID
+     * @throws AxisFault
+     */
+    public void engageModule(String moduleName, String versionID) throws AxisFault {
+        QName moduleQName = Utils.getModuleName(moduleName, versionID);
+        ModuleDescription module = getModule(moduleQName);
+        if (module == null) {
+            module = loadModulefromResources(moduleQName.getLocalPart());
+            engageModule(module, moduleQName);
         }
 
+    }
+
+    private void engageModule(ModuleDescription module, QName moduleQName) throws AxisFault {
         if (module != null) {
             for (Iterator iterator = engagedModules.iterator(); iterator.hasNext();) {
                 QName qName = (QName) iterator.next();
-
-                if (moduleref.equals(qName)) {
+                if (moduleQName.equals(qName)) {
                     log.info("Attempt to engage an already engaged module " + qName);
-
                     return;
                 }
             }
         } else {
-            throw new AxisFault(this + " Refer to invalid module " + moduleref.getLocalPart()
+            throw new AxisFault(this + " Refer to invalid module " + moduleQName.getLocalPart()
                     + " has not bean deployed yet !");
         }
-
         Iterator servicegroups = getServiceGroups();
-
         while (servicegroups.hasNext()) {
             AxisServiceGroup serviceGroup = (AxisServiceGroup) servicegroups.next();
-
-            serviceGroup.engageModuleToGroup(module.getName());
+            serviceGroup.engageModule(module);
         }
+        engagedModules.add(module.getName());
+    }
 
-        if (isNewmodule) {
+    /**
+     * This method is used to load module from class path , the mar files in a jar file inside
+     * modules/    directory
+     *
+     * @param moduleName
+     * @return
+     * @throws AxisFault
+     */
+    public ModuleDescription loadModulefromResources(String moduleName) throws AxisFault {
+        ModuleDescription module;
+        // trying to read from resources
+        File file = new ArchiveReader().creatModuleArchivefromResource(moduleName,
+                getRepository());
+        module = new DeploymentEngine().buildModule(file, this);
+        if (module != null) {
+            // since it is a new module
             addModule(module);
         }
-
-        engagedModules.add(moduleref);
+        return module;
     }
 
     public void notifyObservers(int event_type, AxisService service) {
@@ -390,12 +432,34 @@
 
     /**
      * Method getModule.
+     * first it will check whether the given module is there in the hashMap , if so just return that
+     * and the name can be either with version string or without vresion string
+     * <p/>
+     * if it not found and , the nane does not have version string in it  then try to check
+     * whether default vresion of module available in the sytem for the give name , if so return that
      *
      * @param name
      * @return Returns ModuleDescription.
      */
     public ModuleDescription getModule(QName name) {
-        return (ModuleDescription) defaultModules.get(name);
+        ModuleDescription module = (ModuleDescription) allModules.get(name);
+        if (module != null) {
+            return module;
+        }
+        String moduelName = name.getLocalPart();
+        // checking whether the version string seperator is not there in the module name
+        if (moduelName.indexOf('-') < 0) {
+            String moduleName = name.getLocalPart();
+            String defaultModuleVersion = getDefaultModuleVersion(moduleName);
+            if (defaultModuleVersion != null) {
+                module = (ModuleDescription) allModules.get(
+                        Utils.getModuleName(moduleName, defaultModuleVersion));
+                if (module != null) {
+                    return module;
+                }
+            }
+        }
+        return null;
     }
 
     // the class loder that become the parent of all the modules
@@ -411,7 +475,7 @@
      * @return Returns HashMap.
      */
     public HashMap getModules() {
-        return defaultModules;
+        return allModules;
     }
 
     /**
@@ -587,5 +651,23 @@
             }
         }
         return axis2home;
+    }
+
+    /**
+     * To add a dafault module version , which can either done by programatically or using
+     * axis2.xml , and the dafault module version is important if user ask to engage a module without
+     * given version ID , in that case we will engage the dafault version
+     *
+     * @param moduleName
+     * @param moduleVersion
+     */
+    public void addDefaultModuleVersion(String moduleName, String moduleVersion) {
+        if (nameToverionMap.get(moduleName) == null) {
+            nameToverionMap.put(moduleName, moduleVersion);
+        }
+    }
+
+    public String getDefaultModuleVersion(String moduleName) {
+        return (String) nameToverionMap.get(moduleName);
     }
 }

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/transport/http/ListingAgent.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/transport/http/ListingAgent.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/transport/http/ListingAgent.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/transport/http/ListingAgent.java Tue Jan  3 01:52:10 2006
@@ -286,8 +286,8 @@
         req.getSession().setAttribute(Constants.ENGAGE_STATUS, null);
 
         if ((serviceName != null) && (moduleName != null)) {
-            configContext.getAxisConfiguration().getServiceGroup(serviceName).engageModuleToGroup(
-                    new QName(moduleName));
+            configContext.getAxisConfiguration().getServiceGroup(serviceName).engageModule(
+                    configContext.getAxisConfiguration().getModule(new QName(moduleName)));
             req.getSession().setAttribute(Constants.ENGAGE_STATUS,
                     moduleName
                             + " module engaged to the serviceGroup Successfully");

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java Tue Jan  3 01:52:10 2006
@@ -33,6 +33,8 @@
 
 import javax.xml.namespace.QName;
 import java.io.File;
+import java.util.HashMap;
+import java.util.Iterator;
 
 public class Utils {
 
@@ -248,13 +250,40 @@
      * moduleName-00.0000 as an exmple addressing-01.0001.aar
      */
 
-    public static String getModuleName(String moduleName) {
+    private static String getModuleName(String moduleName) {
         char version_seperator = '-';
         int version_index = moduleName.indexOf(version_seperator);
         if (version_index > 0) {
             return moduleName.substring(0, version_index);
         } else {
             return moduleName;
+        }
+    }
+
+    private static String getModuleVersion(String moduleName) {
+        char version_seperator = '-';
+        int version_index = moduleName.indexOf(version_seperator);
+        if (version_index > 0) {
+            return moduleName.substring(version_index + 1, moduleName.length());
+        } else {
+            return null;
+        }
+    }
+
+
+    public static QName getModuleName(String name, String versionID) {
+        return new QName(name + "-" + versionID);
+    }
+
+    public static void calculateDefaultModuleVersion(HashMap modules) {
+        Iterator allModules = modules.values().iterator();
+        HashMap defaultModules = new HashMap();
+        while (allModules.hasNext()) {
+            ModuleDescription moduleDescription = (ModuleDescription) allModules.next();
+            QName moduleName = moduleDescription.getName();
+            String moduleNameString = getModuleName(moduleName.getLocalPart());
+            String moduleVersionString = getModuleVersion(moduleName.getLocalPart());
+            
         }
     }
 }

Added: webservices/axis2/trunk/java/modules/core/test-resources/deployment/moduleVersion/Test1/axis2.xml
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/test-resources/deployment/moduleVersion/Test1/axis2.xml?rev=365593&view=auto
==============================================================================
--- webservices/axis2/trunk/java/modules/core/test-resources/deployment/moduleVersion/Test1/axis2.xml (added)
+++ webservices/axis2/trunk/java/modules/core/test-resources/deployment/moduleVersion/Test1/axis2.xml Tue Jan  3 01:52:10 2006
@@ -0,0 +1,80 @@
+<axisconfig name="AxisJava2.0">
+    <!-- ================================================= -->
+    <!-- Parameters -->
+    <!-- ================================================= -->
+    <parameter name="hotdeployment" locked="false">true</parameter>
+    <parameter name="hotupdate" locked="false">false</parameter>
+
+    <defaultModuleVersions>
+        <module name="abc" version="1.23"/>
+        <module name="foo" version="0.89"/>
+    </defaultModuleVersions>
+
+
+    <parameter name="userName" locked="false">admin</parameter>
+    <parameter name="password" locked="false">axis2</parameter>
+
+    <!--Note : You can ovride this for particular service by adding the same element with your requirement-->
+    <messageReceivers>
+        <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
+                         class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
+        <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
+                         class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
+    </messageReceivers>
+
+    <!-- ================================================= -->
+    <!-- Phases  -->
+    <!-- ================================================= -->
+    <phaseOrder type="inflow">
+        <!--  System pre defined phases       -->
+        <phase name="TransportIn"/>
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.engine.AddressingBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.engine.RequestURIBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+            <handler name="InstanceDispatcher"
+                     class="org.apache.axis2.engine.InstanceDispatcher">
+                <order phase="PostDispatch"/>
+            </handler>
+        </phase>
+        <!--  System pre defined phases       -->
+        <!--   After Postdispatch phase module author or or service author can add any phase he want      -->
+        <phase name="userphase1"/>
+    </phaseOrder>
+    <phaseOrder type="outflow">
+        <!--      user can add his own phases to this area  -->
+        <phase name="userphase1"/>
+        <!--system predefined phase-->
+        <!--these phase will run irrespective of the service-->
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+    </phaseOrder>
+    <phaseOrder type="INfaultflow">
+        <!--      user can add his own phases to this area  -->
+        <phase name="userphase1"/>
+    </phaseOrder>
+    <phaseOrder type="Outfaultflow">
+        <!--      user can add his own phases to this area  -->
+        <phase name="userphase1"/>
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+    </phaseOrder>
+</axisconfig>
+

Added: webservices/axis2/trunk/java/modules/core/test/org/apache/axis2/deployment/ModuleversionTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/test/org/apache/axis2/deployment/ModuleversionTest.java?rev=365593&view=auto
==============================================================================
--- webservices/axis2/trunk/java/modules/core/test/org/apache/axis2/deployment/ModuleversionTest.java (added)
+++ webservices/axis2/trunk/java/modules/core/test/org/apache/axis2/deployment/ModuleversionTest.java Tue Jan  3 01:52:10 2006
@@ -0,0 +1,36 @@
+package org.apache.axis2.deployment;
+
+import junit.framework.TestCase;
+import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.ConfigurationContextFactory;
+import org.apache.axis2.engine.AxisConfiguration;
+/*
+* Copyright 2004,2005 The Apache Software Foundation.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+*      http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*
+*/
+
+public class ModuleversionTest extends TestCase {
+
+    public void testDefautModuleVersion() throws AxisFault {
+        String filename = "./test-resources/deployment/moduleVersion/Test1";
+        ConfigurationContextFactory builder = new ConfigurationContextFactory();
+        AxisConfiguration ac = builder.buildConfigurationContext(filename)
+                .getAxisConfiguration();
+        assertNotNull(ac);
+        assertEquals(ac.getDefaultModuleVersion("abc"), "1.23");
+        assertEquals(ac.getDefaultModuleVersion("foo"), "0.89");
+    }
+}

Modified: webservices/axis2/trunk/java/modules/integration/itest/org/apache/axis2/rest/RESTBasedEchoRawXMLTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/itest/org/apache/axis2/rest/RESTBasedEchoRawXMLTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/itest/org/apache/axis2/rest/RESTBasedEchoRawXMLTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/itest/org/apache/axis2/rest/RESTBasedEchoRawXMLTest.java Tue Jan  3 01:52:10 2006
@@ -91,7 +91,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext, null);
         sender.setOptions(options);
         options.setTo(targetEPR);
         OMElement result = sender.sendReceive(payload);

Modified: webservices/axis2/trunk/java/modules/integration/itest/test/interop/mtom/MTOMEchoTestMultipleTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/itest/test/interop/mtom/MTOMEchoTestMultipleTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/itest/test/interop/mtom/MTOMEchoTestMultipleTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/itest/test/interop/mtom/MTOMEchoTestMultipleTest.java Tue Jan  3 01:52:10 2006
@@ -55,7 +55,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext,null);
         sender.setOptions(options);
         options.setTo(targetEPR);
         OMElement resultElem = sender.sendReceive(BodyElements.bodyMultiple(optimized, repeat));

Modified: webservices/axis2/trunk/java/modules/integration/itest/test/interop/mtom/MTOMEchoTestSingleTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/itest/test/interop/mtom/MTOMEchoTestSingleTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/itest/test/interop/mtom/MTOMEchoTestSingleTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/itest/test/interop/mtom/MTOMEchoTestSingleTest.java Tue Jan  3 01:52:10 2006
@@ -51,7 +51,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext, null);
         sender.setOptions(options);
         options.setTo(targetEPR);
         OMElement resultElem = sender.sendReceive(BodyElements.bodySingle(optimized));

Modified: webservices/axis2/trunk/java/modules/integration/src/test/interop/whitemesa/round4/complex/EchoBlockingClient.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/src/test/interop/whitemesa/round4/complex/EchoBlockingClient.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/src/test/interop/whitemesa/round4/complex/EchoBlockingClient.java (original)
+++ webservices/axis2/trunk/java/modules/integration/src/test/interop/whitemesa/round4/complex/EchoBlockingClient.java Tue Jan  3 01:52:10 2006
@@ -46,7 +46,7 @@
             ConfigurationContextFactory factory = new ConfigurationContextFactory();
             ConfigurationContext configContext =
                     factory.buildConfigurationContext("target/test-resources/integrationRepo");
-            ServiceClient sender = new ServiceClient(configContext);
+            ServiceClient sender = new ServiceClient(configContext,null);
             sender.setOptions(options);
             options.setTo(targetEPR);
             firstchild = sender.sendReceive(util.getEchoOMElement());

Modified: webservices/axis2/trunk/java/modules/integration/src/test/interop/whitemesa/round4/simple/EchoBlockingClient.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/src/test/interop/whitemesa/round4/simple/EchoBlockingClient.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/src/test/interop/whitemesa/round4/simple/EchoBlockingClient.java (original)
+++ webservices/axis2/trunk/java/modules/integration/src/test/interop/whitemesa/round4/simple/EchoBlockingClient.java Tue Jan  3 01:52:10 2006
@@ -45,7 +45,7 @@
             ConfigurationContextFactory factory = new ConfigurationContextFactory();
             ConfigurationContext configContext =
                     factory.buildConfigurationContext("target/test-resources/integrationRepo");
-            ServiceClient sender = new ServiceClient(configContext);
+            ServiceClient sender = new ServiceClient(configContext, null); 
             sender.setOptions(options);
             options.setTo(targetEPR);
             firstchild = sender.sendReceive(util.getEchoOMElement());

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CallUnregisteredServiceTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CallUnregisteredServiceTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CallUnregisteredServiceTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CallUnregisteredServiceTest.java Tue Jan  3 01:52:10 2006
@@ -75,7 +75,7 @@
             ConfigurationContextFactory factory = new ConfigurationContextFactory();
             ConfigurationContext configContext =
                     factory.buildConfigurationContext("target/test-resources/integrationRepo");
-            ServiceClient sender = new ServiceClient(configContext);
+            ServiceClient sender = new ServiceClient(configContext, null);
             sender.setOptions(options);
             options.setTo(targetEPR);
 

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CharactersetEncodingTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CharactersetEncodingTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CharactersetEncodingTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CharactersetEncodingTest.java Tue Jan  3 01:52:10 2006
@@ -19,7 +19,6 @@
 import junit.framework.TestCase;
 import org.apache.axis2.AxisFault;
 import org.apache.axis2.Constants;
-import org.apache.axis2.client.Call;
 import org.apache.axis2.client.Options;
 import org.apache.axis2.client.ServiceClient;
 import org.apache.axis2.context.ConfigurationContext;
@@ -91,7 +90,7 @@
             ConfigurationContextFactory factory = new ConfigurationContextFactory();
             ConfigurationContext configContext =
                     factory.buildConfigurationContext(Constants.TESTING_PATH + "chunking-enabledRepository");
-            ServiceClient sender = new ServiceClient(configContext);
+            ServiceClient sender = new ServiceClient(configContext, null);
             sender.setOptions(options);
             options.setTo(targetEPR);
 

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CommonsHTTPEchoRawXMLTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CommonsHTTPEchoRawXMLTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CommonsHTTPEchoRawXMLTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/CommonsHTTPEchoRawXMLTest.java Tue Jan  3 01:52:10 2006
@@ -21,13 +21,12 @@
 import junit.framework.TestCase;
 import org.apache.axis2.AxisFault;
 import org.apache.axis2.Constants;
-import org.apache.axis2.context.ConfigurationContextFactory;
-import org.apache.axis2.context.ConfigurationContext;
-import org.apache.axis2.client.Call;
 import org.apache.axis2.client.Options;
 import org.apache.axis2.client.ServiceClient;
 import org.apache.axis2.client.async.AsyncResult;
 import org.apache.axis2.client.async.Callback;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.context.ConfigurationContextFactory;
 import org.apache.axis2.description.AxisService;
 import org.apache.axis2.engine.util.TestConstants;
 import org.apache.axis2.integration.TestingUtils;
@@ -88,7 +87,7 @@
                 finish = true;
             }
 
-            public void reportError(Exception e) {
+            public void onError(Exception e) {
                 log.info(e.getMessage());
                 finish = true;
             }
@@ -101,11 +100,11 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext(Constants.TESTING_PATH + "commons-http-enabledRepository");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext, null);
         sender.setOptions(options);
         options.setTo(targetEPR);
 
-        sender.sendReceiveNonblocking(payload,callback);
+        sender.sendReceiveNonblocking(payload, callback);
 
         int index = 0;
         while (!finish) {
@@ -141,7 +140,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext(Constants.TESTING_PATH + "commons-http-enabledRepository");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext, null);
         sender.setOptions(options);
         options.setTo(targetEPR);
 

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawRuntimeProxyTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawRuntimeProxyTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawRuntimeProxyTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawRuntimeProxyTest.java Tue Jan  3 01:52:10 2006
@@ -89,7 +89,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext,null);
         sender.setOptions(options);
         options.setTo(targetEPR);
 

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLChunkedTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLChunkedTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLChunkedTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLChunkedTest.java Tue Jan  3 01:52:10 2006
@@ -20,23 +20,16 @@
 
 import junit.framework.TestCase;
 import org.apache.axis2.Constants;
-import org.apache.axis2.context.ConfigurationContextFactory;
-import org.apache.axis2.context.ConfigurationContext;
-import org.apache.axis2.client.Call;
 import org.apache.axis2.client.Options;
 import org.apache.axis2.client.ServiceClient;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.context.ConfigurationContextFactory;
 import org.apache.axis2.description.AxisService;
 import org.apache.axis2.engine.util.TestConstants;
 import org.apache.axis2.integration.TestingUtils;
 import org.apache.axis2.integration.UtilServer;
-import org.apache.axis2.om.OMAbstractFactory;
 import org.apache.axis2.om.OMElement;
-import org.apache.axis2.soap.SOAPFactory;
 import org.apache.axis2.util.Utils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import javax.xml.namespace.QName;
 
 public class EchoRawXMLChunkedTest extends TestCase implements TestConstants {
 
@@ -121,7 +114,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext(CLIENT_HOME);
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext, null);
         sender.setOptions(clientOptions);
         clientOptions.setTo(targetEPR);
 

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLLoadTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLLoadTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLLoadTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLLoadTest.java Tue Jan  3 01:52:10 2006
@@ -103,7 +103,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext, null);
         sender.setOptions(options);
         options.setTo(targetEPR);
 

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLMultipleTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLMultipleTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLMultipleTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLMultipleTest.java Tue Jan  3 01:52:10 2006
@@ -92,7 +92,7 @@
                     finish = true;
                 }
 
-                public void reportError(Exception e) {
+                public void onError(Exception e) {
                     log.info(e.getMessage());
                     finish = true;
                 }
@@ -100,7 +100,7 @@
             ConfigurationContextFactory factory = new ConfigurationContextFactory();
             ConfigurationContext configContext =
                     factory.buildConfigurationContext("target/test-resources/integrationRepo");
-            ServiceClient sender = new ServiceClient(configContext);
+            ServiceClient sender = new ServiceClient(configContext, null);
             sender.setOptions(options);
             options.setTo(targetEPR);
 
@@ -128,7 +128,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext, null);
 
         for (int i = 0; i < 5; i++) {
             Options options = new Options();
@@ -143,7 +143,7 @@
                     finish = true;
                 }
 
-                public void reportError(Exception e) {
+                public void onError(Exception e) {
                     log.info(e.getMessage());
                     finish = true;
                 }
@@ -180,7 +180,7 @@
             ConfigurationContextFactory factory = new ConfigurationContextFactory();
             ConfigurationContext configContext =
                     factory.buildConfigurationContext("target/test-resources/integrationRepo");
-            ServiceClient sender = new ServiceClient(configContext);
+            ServiceClient sender = new ServiceClient(configContext, null);
             sender.setOptions(options);
             options.setTo(targetEPR);
 
@@ -211,7 +211,7 @@
             ConfigurationContextFactory factory = new ConfigurationContextFactory();
             ConfigurationContext configContext =
                     factory.buildConfigurationContext("target/test-resources/integrationRepo");
-            ServiceClient sender = new ServiceClient(configContext);
+            ServiceClient sender = new ServiceClient(configContext, null);
 
             sender.setOptions(options);
 

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLOnTwoChannelsSyncTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLOnTwoChannelsSyncTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLOnTwoChannelsSyncTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLOnTwoChannelsSyncTest.java Tue Jan  3 01:52:10 2006
@@ -20,7 +20,7 @@
 import org.apache.axis2.Constants;
 import org.apache.axis2.client.Options;
 import org.apache.axis2.client.ServiceClient;
-import org.apache.axis2.context.ServiceContext;
+import org.apache.axis2.context.ConfigurationContext;
 import org.apache.axis2.description.AxisService;
 import org.apache.axis2.engine.util.TestConstants;
 import org.apache.axis2.integration.TestingUtils;
@@ -30,8 +30,6 @@
 import org.apache.axis2.om.OMFactory;
 import org.apache.axis2.om.OMNamespace;
 import org.apache.axis2.util.Utils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
 
 import javax.xml.namespace.QName;
 
@@ -70,8 +68,7 @@
                         Echo.class.getName(),
                         operationName);
 
-        ServiceContext serviceContext = UtilServer.createAdressedEnabledClientSide(
-                service);
+        ConfigurationContext configConetxt = UtilServer.createClientConfigurationContext();
 
         OMFactory fac = OMAbstractFactory.getOMFactory();
 
@@ -86,12 +83,11 @@
         options.setUseSeparateListener(true);
         options.setAction(operationName.getLocalPart());
 
-        ServiceClient sender = new ServiceClient(serviceContext);
-        sender.setCurrentOperationName(operationName);
+        ServiceClient sender = new ServiceClient(configConetxt, service);
         sender.setOptions(options);
         options.setTo(targetEPR);
 
-        OMElement result = sender.sendReceive(method);
+        OMElement result = sender.sendReceive(operationName, method);
 
         TestingUtils.campareWithCreatedOMElement(result);
         sender.finalizeInvoke();

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLOnTwoChannelsTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLOnTwoChannelsTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLOnTwoChannelsTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLOnTwoChannelsTest.java Tue Jan  3 01:52:10 2006
@@ -23,7 +23,7 @@
 import org.apache.axis2.client.ServiceClient;
 import org.apache.axis2.client.async.AsyncResult;
 import org.apache.axis2.client.async.Callback;
-import org.apache.axis2.context.ServiceContext;
+import org.apache.axis2.context.ConfigurationContext;
 import org.apache.axis2.description.AxisService;
 import org.apache.axis2.engine.util.TestConstants;
 import org.apache.axis2.integration.TestingUtils;
@@ -78,8 +78,7 @@
                         Echo.class.getName(),
                         operationName);
 
-        ServiceContext serviceContext = UtilServer.createAdressedEnabledClientSide(
-                service);
+        ConfigurationContext configcontext = UtilServer.createClientConfigurationContext();
 
         OMFactory fac = OMAbstractFactory.getOMFactory();
 
@@ -111,18 +110,18 @@
                     finish = true;
                 }
 
-                public void reportError(Exception e) {
+                public void onError(Exception e) {
                     log.info(e.getMessage());
                     finish = true;
                 }
             };
 
-            sender = new ServiceClient(serviceContext);
-            sender.setCurrentOperationName(operationName);
+            sender = new ServiceClient(configcontext, service);
+            sender.engageModule(new QName("addressing"));
             sender.setOptions(options);
             options.setTo(targetEPR);
 
-            sender.sendReceiveNonblocking(method, callback);
+            sender.sendReceiveNonblocking(operationName, method, callback);
 
 //            call.invokeNonBlocking(operationName.getLocalPart(),
 //                    method,

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawXMLTest.java Tue Jan  3 01:52:10 2006
@@ -90,7 +90,7 @@
                 finish = true;
             }
 
-            public void reportError(Exception e) {
+            public void onError(Exception e) {
                 log.info(e.getMessage());
                 finish = true;
             }
@@ -99,7 +99,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext, null);
         sender.setOptions(options);
         options.setTo(targetEPR);
         sender.sendReceiveNonblocking(payload, callback);
@@ -126,7 +126,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext, null);
         sender.setOptions(options);
         options.setTo(targetEPR);
 
@@ -146,7 +146,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext, null);
         sender.setOptions(options);
         options.setTo(targetEPR);
 

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/HandlerFailureTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/HandlerFailureTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/HandlerFailureTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/HandlerFailureTest.java Tue Jan  3 01:52:10 2006
@@ -163,7 +163,7 @@
             ConfigurationContextFactory factory = new ConfigurationContextFactory();
             ConfigurationContext configContext =
                     factory.buildConfigurationContext("target/test-resources/integrationRepo");
-            ServiceClient sender = new ServiceClient(configContext);
+            ServiceClient sender = new ServiceClient(configContext, null);
             sender.setOptions(options);
 
             OMElement result = sender.sendReceive(method);

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/MessageContextInjectionTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/MessageContextInjectionTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/MessageContextInjectionTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/MessageContextInjectionTest.java Tue Jan  3 01:52:10 2006
@@ -95,7 +95,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext, null);
         Options options = new Options();
         sender.setOptions(options);
         options.setTo(targetEPR);

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/OneWayRawXMLTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/OneWayRawXMLTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/OneWayRawXMLTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/OneWayRawXMLTest.java Tue Jan  3 01:52:10 2006
@@ -79,7 +79,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext,null);
 
         Options options = new Options();
         sender.setOptions(options);

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/ServiceDispatchingTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/ServiceDispatchingTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/ServiceDispatchingTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/ServiceDispatchingTest.java Tue Jan  3 01:52:10 2006
@@ -70,7 +70,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext, null);
         sender.setOptions(options);
         options.setTo(targetEPR);
 
@@ -95,7 +95,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext, null);
         sender.setOptions(options);
         options.setTo(targetEPR);
 
@@ -120,7 +120,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext, null);
         sender.setOptions(options);
         options.setTo(targetEPR);
 

Modified: webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/ServiceGroupContextTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/ServiceGroupContextTest.java?rev=365593&r1=365592&r2=365593&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/ServiceGroupContextTest.java (original)
+++ webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/ServiceGroupContextTest.java Tue Jan  3 01:52:10 2006
@@ -92,7 +92,7 @@
         ConfigurationContextFactory factory = new ConfigurationContextFactory();
         ConfigurationContext configContext =
                 factory.buildConfigurationContext("target/test-resources/integrationRepo");
-        ServiceClient sender = new ServiceClient(configContext);
+        ServiceClient sender = new ServiceClient(configContext,null);
         sender.setOptions(options);
         options.setTo(targetEPR);