upgrading to Axis2 1.4... Still the build is not passing..But commiting due to the large number of changes I'm doing.
diff --git a/conf/coordinator-axis2.xml b/conf/coordinator-axis2.xml
index 7f0f055..92d05d0 100644
--- a/conf/coordinator-axis2.xml
+++ b/conf/coordinator-axis2.xml
@@ -218,86 +218,101 @@
     <!-- ================================================= -->
     <!-- Phases  -->
     <!-- ================================================= -->
-    <phaseOrder type="InFlow">
-        <!--  System pre defined phases       -->
-        <phase name="Transport">
-            <handler name="RequestURIBasedDispatcher"
-                     class="org.apache.axis2.engine.RequestURIBasedDispatcher">
-                <order phase="Transport"/>
-            </handler>
-            <handler name="SOAPActionBasedDispatcher"
-                     class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
-                <order phase="Transport"/>
-            </handler>
-        </phase>
-        <phase name="Security"/>
-        <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="SOAPMessageBodyBasedDispatcher"
-                     class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
-                <order phase="Dispatch"/>
-            </handler>
-            <handler name="InstanceDispatcher"
-                     class="org.apache.axis2.engine.InstanceDispatcher">
-                <order phase="Dispatch"/>
-            </handler>
-        </phase>
-        <!--  System pre defined phases       -->
-        <!--   After Postdispatch phase module author or or service author can add any phase he want      -->
-        <phase name="OperationInPhase"/>
-	<phase name="soapmonitorPhase"/>
+    <phaseOrder type="InFlow">

+        <!--  System predefined phases       -->

+        <phase name="Transport">

+            <handler name="RequestURIBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">

+                <order phase="Transport"/>

+            </handler>

+            <handler name="SOAPActionBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">

+                <order phase="Transport"/>

+            </handler>

+        </phase>

+        <phase name="Addressing">

+             <handler name="AddressingBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">

+                 <order phase="Addressing"/>

+            </handler>

+        </phase>

+        <phase name="Security"/>

+        <phase name="PreDispatch"/>

+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">

+            <handler name="RequestURIBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>

+            <handler name="SOAPActionBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>

+            <handler name="RequestURIOperationDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>

+            <handler name="SOAPMessageBodyBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>

+            <handler name="HTTPLocationBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>

+            <handler name="GenericProviderDispatcher"

+                     class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"/>

+            <handler name="MustUnderstandValidationDispatcher"

+                     class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"/>

+        </phase>

+        <phase name="RMPhase"/>

+        <!--  System predefined phases       -->

+        <!--   After Postdispatch phase module author or service author can add any phase he want      -->

+        <phase name="OperationInPhase">

+            <handler name="MustUnderstandChecker"

+                     class="org.apache.axis2.jaxws.dispatchers.MustUnderstandChecker">

+                <order phase="OperationInPhase"/>

+            </handler>

+        </phase>

+        <phase name="soapmonitorPhase"/>

+    </phaseOrder>

+    <phaseOrder type="OutFlow">

+        <!--      user can add his own phases to this area  -->

+        <phase name="soapmonitorPhase"/>

+        <phase name="OperationOutPhase"/>

+        <!--system predefined phase-->

+        <!--these phase will run irrespective of the service-->

+        <phase name="RMPhase"/>

+        <phase name="PolicyDetermination"/>

+        <phase name="MessageOut"/>

+        <phase name="Security"/>

+    </phaseOrder>

+    <phaseOrder type="InFaultFlow">

+        <phase name="Addressing">

+             <handler name="AddressingBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">

+                 <order phase="Addressing"/>

+            </handler>

+        </phase>

+        <phase name="Security"/>

+        <phase name="PreDispatch"/>

+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">

+            <handler name="RequestURIBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>

+            <handler name="SOAPActionBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>

+            <handler name="RequestURIOperationDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>

+            <handler name="SOAPMessageBodyBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>

+            <handler name="HTTPLocationBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>

+            <handler name="GenericProviderDispatcher"

+                     class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"/>

+            <handler name="MustUnderstandValidationDispatcher"

+                     class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"/>

+        </phase>

+        <phase name="RMPhase"/>

+        <!--      user can add his own phases to this area  -->

+        <phase name="OperationInFaultPhase"/>

+        <phase name="soapmonitorPhase"/>

+    </phaseOrder>

+    <phaseOrder type="OutFaultFlow">

+        <!--      user can add his own phases to this area  -->

+        <phase name="soapmonitorPhase"/>

+        <phase name="OperationOutFaultPhase"/>

+        <phase name="RMPhase"/>

+        <phase name="PolicyDetermination"/>

+        <phase name="MessageOut"/>

+        <phase name="Security"/>

     </phaseOrder>
-    <phaseOrder type="OutFlow">
-        <!--      user can add his own phases to this area  -->
-	<phase name="soapmonitorPhase"/>
-        <phase name="OperationOutPhase"/>
-        <!--system predefined phase-->
-        <!--these phase will run irrespective of the service-->
-        <phase name="PolicyDetermination"/>
-        <phase name="MessageOut"/>
-        <phase name="Security"/>
-    </phaseOrder>
-    <phaseOrder type="InFaultFlow">
-        <phase name="PreDispatch"/>
-        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
-            <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="AddressingBasedDispatcher"
-                     class="org.apache.axis2.engine.AddressingBasedDispatcher">
-                <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>
-        <!--      user can add his own phases to this area  -->
-        <phase name="OperationInFaultPhase"/>
-	<phase name="soapmonitorPhase"/>
-    </phaseOrder>
-    <phaseOrder type="OutFaultFlow">
-        <!--      user can add his own phases to this area  -->
-	<phase name="soapmonitorPhase"/>
-        <phase name="OperationOutFaultPhase"/>
-        <phase name="PolicyDetermination"/>
-        <phase name="MessageOut"/>
-    </phaseOrder>
-</axisconfig>
\ No newline at end of file
+</axisconfig>
diff --git a/conf/initiator-axis2.xml b/conf/initiator-axis2.xml
index cfe121a..eaaedaa 100644
--- a/conf/initiator-axis2.xml
+++ b/conf/initiator-axis2.xml
@@ -220,88 +220,101 @@
 	<!-- ================================================= -->
 	<!-- Phases  -->
 	<!-- ================================================= -->
-	<phaseOrder type="InFlow">
-		<!--  System pre defined phases       -->
-		<phase name="Transport">
-			<handler name="RequestURIBasedDispatcher"
-				class="org.apache.axis2.engine.RequestURIBasedDispatcher">
-				<order phase="Transport" />
-			</handler>
-			<handler name="SOAPActionBasedDispatcher"
-				class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
-				<order phase="Transport" />
-			</handler>
-		</phase>
-		<phase name="Security" />
-		<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="SOAPMessageBodyBasedDispatcher"
-				class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
-				<order phase="Dispatch" />
-			</handler>
-			<handler name="InstanceDispatcher"
-				class="org.apache.axis2.engine.InstanceDispatcher">
-				<order phase="Dispatch" />
-			</handler>
-		</phase>
-		<!--  System pre defined phases       -->
-		<!--   After Postdispatch phase module author or or service author can add any phase he want      -->
-		<phase name="OperationInPhase" />
-		<phase name="soapmonitorPhase" />
-	</phaseOrder>
-	<phaseOrder type="OutFlow">
-		<!--      user can add his own phases to this area  -->
-		<phase name="soapmonitorPhase" />
-		<phase name="OperationOutPhase" />
-		<!--system predefined phase-->
-		<!--these phase will run irrespective of the service-->
-		<phase name="PolicyDetermination" />
-		<phase name="MessageOut" />
-		<phase name="Security" />
-	</phaseOrder>
-	<phaseOrder type="InFaultFlow">
-		<phase name="PreDispatch" />
-		<phase name="Dispatch"
-			class="org.apache.axis2.engine.DispatchPhase">
-			<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="AddressingBasedDispatcher"
-				class="org.apache.axis2.engine.AddressingBasedDispatcher">
-				<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>
-		<!--      user can add his own phases to this area  -->
-		<phase name="OperationInFaultPhase" />
-		<phase name="soapmonitorPhase" />
-	</phaseOrder>
-	<phaseOrder type="OutFaultFlow">
-		<!--      user can add his own phases to this area  -->
-		<phase name="soapmonitorPhase" />
-		<phase name="OperationOutFaultPhase" />
-		<phase name="PolicyDetermination" />
-		<phase name="MessageOut" />
-	</phaseOrder>
-</axisconfig>
\ No newline at end of file
+    <phaseOrder type="InFlow">

+        <!--  System predefined phases       -->

+        <phase name="Transport">

+            <handler name="RequestURIBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">

+                <order phase="Transport"/>

+            </handler>

+            <handler name="SOAPActionBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">

+                <order phase="Transport"/>

+            </handler>

+        </phase>

+        <phase name="Addressing">

+             <handler name="AddressingBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">

+                 <order phase="Addressing"/>

+            </handler>

+        </phase>

+        <phase name="Security"/>

+        <phase name="PreDispatch"/>

+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">

+            <handler name="RequestURIBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>

+            <handler name="SOAPActionBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>

+            <handler name="RequestURIOperationDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>

+            <handler name="SOAPMessageBodyBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>

+            <handler name="HTTPLocationBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>

+            <handler name="GenericProviderDispatcher"

+                     class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"/>

+            <handler name="MustUnderstandValidationDispatcher"

+                     class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"/>

+        </phase>

+        <phase name="RMPhase"/>

+        <!--  System predefined phases       -->

+        <!--   After Postdispatch phase module author or service author can add any phase he want      -->

+        <phase name="OperationInPhase">

+            <handler name="MustUnderstandChecker"

+                     class="org.apache.axis2.jaxws.dispatchers.MustUnderstandChecker">

+                <order phase="OperationInPhase"/>

+            </handler>

+        </phase>

+        <phase name="soapmonitorPhase"/>

+    </phaseOrder>

+    <phaseOrder type="OutFlow">

+        <!--      user can add his own phases to this area  -->

+        <phase name="soapmonitorPhase"/>

+        <phase name="OperationOutPhase"/>

+        <!--system predefined phase-->

+        <!--these phase will run irrespective of the service-->

+        <phase name="RMPhase"/>

+        <phase name="PolicyDetermination"/>

+        <phase name="MessageOut"/>

+        <phase name="Security"/>

+    </phaseOrder>

+    <phaseOrder type="InFaultFlow">

+        <phase name="Addressing">

+             <handler name="AddressingBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">

+                 <order phase="Addressing"/>

+            </handler>

+        </phase>

+        <phase name="Security"/>

+        <phase name="PreDispatch"/>

+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">

+            <handler name="RequestURIBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>

+            <handler name="SOAPActionBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>

+            <handler name="RequestURIOperationDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>

+            <handler name="SOAPMessageBodyBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>

+            <handler name="HTTPLocationBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>

+            <handler name="GenericProviderDispatcher"

+                     class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"/>

+            <handler name="MustUnderstandValidationDispatcher"

+                     class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"/>

+        </phase>

+        <phase name="RMPhase"/>

+        <!--      user can add his own phases to this area  -->

+        <phase name="OperationInFaultPhase"/>

+        <phase name="soapmonitorPhase"/>

+    </phaseOrder>

+    <phaseOrder type="OutFaultFlow">

+        <!--      user can add his own phases to this area  -->

+        <phase name="soapmonitorPhase"/>

+        <phase name="OperationOutFaultPhase"/>

+        <phase name="RMPhase"/>

+        <phase name="PolicyDetermination"/>

+        <phase name="MessageOut"/>

+        <phase name="Security"/>

+    </phaseOrder>
+</axisconfig>
diff --git a/conf/participant-axis2.xml b/conf/participant-axis2.xml
index 71594a2..a394210 100644
--- a/conf/participant-axis2.xml
+++ b/conf/participant-axis2.xml
@@ -218,87 +218,102 @@
     <!-- ================================================= -->
     <!-- Phases  -->
     <!-- ================================================= -->
-    <phaseOrder type="InFlow">
-        <!--  System pre defined phases       -->
-        <phase name="Transport">
-            <handler name="RequestURIBasedDispatcher"
-                     class="org.apache.axis2.engine.RequestURIBasedDispatcher">
-                <order phase="Transport"/>
-            </handler>
-            <handler name="SOAPActionBasedDispatcher"
-                     class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
-                <order phase="Transport"/>
-            </handler>
-        </phase>
-        <phase name="Security"/>
-        <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="SOAPMessageBodyBasedDispatcher"
-                     class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
-                <order phase="Dispatch"/>
-            </handler>
-            <handler name="InstanceDispatcher"
-                     class="org.apache.axis2.engine.InstanceDispatcher">
-                <order phase="Dispatch"/>
-            </handler>
-        </phase>
-        <!--  System pre defined phases       -->
-        <!--   After Postdispatch phase module author or or service author can add any phase he want      -->
-        <phase name="OperationInPhase"/>
-	<phase name="soapmonitorPhase"/>
-    </phaseOrder>
-    <phaseOrder type="OutFlow">
-        <!--      user can add his own phases to this area  -->
-	<phase name="soapmonitorPhase"/>
-        <phase name="OperationOutPhase"/>
-        <!--system predefined phase-->
-        <!--these phase will run irrespective of the service-->
-        <phase name="PolicyDetermination"/>
-        <phase name="MessageOut"/>
-        <phase name="Security"/>
-    </phaseOrder>
-    <phaseOrder type="InFaultFlow">
-        <phase name="PreDispatch"/>
-        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
-            <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="AddressingBasedDispatcher"
-                     class="org.apache.axis2.engine.AddressingBasedDispatcher">
-                <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>
-        <!--      user can add his own phases to this area  -->
-        <phase name="OperationInFaultPhase"/>
-	<phase name="soapmonitorPhase"/>
-    </phaseOrder>
-    <phaseOrder type="OutFaultFlow">
-        <!--      user can add his own phases to this area  -->
-	<phase name="soapmonitorPhase"/>
-        <phase name="OperationOutFaultPhase"/>
-        <phase name="PolicyDetermination"/>
-        <phase name="MessageOut"/>
+    <phaseOrder type="InFlow">

+        <!--  System predefined phases       -->

+        <phase name="Transport">

+            <handler name="RequestURIBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">

+                <order phase="Transport"/>

+            </handler>

+            <handler name="SOAPActionBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">

+                <order phase="Transport"/>

+            </handler>

+        </phase>

+        <phase name="Addressing">

+             <handler name="AddressingBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">

+                 <order phase="Addressing"/>

+            </handler>

+        </phase>

+        <phase name="Security"/>

+        <phase name="PreDispatch"/>

+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">

+            <handler name="RequestURIBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>

+            <handler name="SOAPActionBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>

+            <handler name="RequestURIOperationDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>

+            <handler name="SOAPMessageBodyBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>

+            <handler name="HTTPLocationBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>

+            <handler name="GenericProviderDispatcher"

+                     class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"/>

+            <handler name="MustUnderstandValidationDispatcher"

+                     class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"/>

+        </phase>

+        <phase name="RMPhase"/>

+        <!--  System predefined phases       -->

+        <!--   After Postdispatch phase module author or service author can add any phase he want      -->

+        <phase name="OperationInPhase">

+            <handler name="MustUnderstandChecker"

+                     class="org.apache.axis2.jaxws.dispatchers.MustUnderstandChecker">

+                <order phase="OperationInPhase"/>

+            </handler>

+        </phase>

+        <phase name="soapmonitorPhase"/>

+    </phaseOrder>

+    <phaseOrder type="OutFlow">

+        <!--      user can add his own phases to this area  -->

+        <phase name="soapmonitorPhase"/>

+        <phase name="OperationOutPhase"/>

+        <!--system predefined phase-->

+        <!--these phase will run irrespective of the service-->

+        <phase name="RMPhase"/>

+        <phase name="PolicyDetermination"/>

+        <phase name="MessageOut"/>

+        <phase name="Security"/>

+    </phaseOrder>

+    <phaseOrder type="InFaultFlow">

+        <phase name="Addressing">

+             <handler name="AddressingBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">

+                 <order phase="Addressing"/>

+            </handler>

+        </phase>

+        <phase name="Security"/>

+        <phase name="PreDispatch"/>

+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">

+            <handler name="RequestURIBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>

+            <handler name="SOAPActionBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>

+            <handler name="RequestURIOperationDispatcher"

+                     class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>

+            <handler name="SOAPMessageBodyBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>

+            <handler name="HTTPLocationBasedDispatcher"

+                     class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>

+            <handler name="GenericProviderDispatcher"

+                     class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"/>

+            <handler name="MustUnderstandValidationDispatcher"

+                     class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"/>

+        </phase>

+        <phase name="RMPhase"/>

+        <!--      user can add his own phases to this area  -->

+        <phase name="OperationInFaultPhase"/>

+        <phase name="soapmonitorPhase"/>

+    </phaseOrder>

+    <phaseOrder type="OutFaultFlow">

+        <!--      user can add his own phases to this area  -->

+        <phase name="soapmonitorPhase"/>

+        <phase name="OperationOutFaultPhase"/>

+        <phase name="RMPhase"/>

+        <phase name="PolicyDetermination"/>

+        <phase name="MessageOut"/>

+        <phase name="Security"/>

     </phaseOrder>
 </axisconfig>
 
diff --git a/project.properties b/project.properties
index 32c849e..1e62ac3 100644
--- a/project.properties
+++ b/project.properties
@@ -24,7 +24,7 @@
 # -------------------------------------------------------------------

 #                Dependency Repositories

 # -------------------------------------------------------------------

-maven.repo.remote=\
+maven.repo.remote=\

 http://www.ibiblio.org/maven,\

 https://maven-repository.dev.java.net/nonav/repository/,\

 http://people.apache.org/repo/m1-ibiblio-rsync-repository/,\

@@ -49,28 +49,28 @@
 # -------------------------------------------------------------------

 #                Versions of dependencies

 # -------------------------------------------------------------------

-axis2.version=1.2

+axis2.version=1.4

 activation.version=1.1

 annogen.version=0.1.0

-axiom.version=1.2.4

+axiom.version=1.2.7

 backport_util_concurrent.version=2.2

 commons.codec.version=1.3

-commons.httpclient.version=3.0.1
+commons.httpclient.version=3.0.1

 commons.fileupload.version=1.1.1

 commons.logging.version=1.1

-jakarta.httpcore.version=4.0-alpha4

+jakarta.httpcore.version=4.0-beta1

 javamail.version=1.4

 jaxen.version=1.1-beta-10

 junit.version=3.8.2

-neethi.version=2.0

+neethi.version=2.0.4

 stax.api.version=1.0.1

 stax.impl.artifactid=wstx-asl

 stax.impl.groupid=woodstox

 stax.impl.version=3.2.1

 stax_utils.version=20060915 

-woden.version=1.0.0M6

-wsdl4j.version=1.6.1

-XmlSchema.version=1.2

+woden.version=1.0M8

+wsdl4j.version=1.6.2

+XmlSchema.version=1.4.2

 xerces.version=2.8.1

 xml_apis.version=1.3.03

 log4j.version=1.2.13

diff --git a/project.xml b/project.xml
index 1039bd0..8211dd3 100644
--- a/project.xml
+++ b/project.xml
@@ -240,21 +240,20 @@
 				<module>true</module>
 			</properties>
 		</dependency>
-	    <dependency>
-          <groupId>commons-fileupload</groupId>
-          <artifactId>commons-fileupload</artifactId>
-          <version>${commons.fileupload.version}</version>
-          <properties>
-              <module>true</module>
-          </properties>
-       </dependency>   
+               
+	        <dependency>
+                        <groupId>commons-fileupload</groupId>
+                        <artifactId>commons-fileupload</artifactId>
+                        <version>${commons.fileupload.version}</version>
+                        <properties>
+                              <module>true</module>
+                        </properties>
+                </dependency>   
 		<dependency>
 			<groupId>httpcomponents-httpcore</groupId>
-			<artifactId>jakarta-httpcore</artifactId>
+			<artifactId>httpcore</artifactId>
 			<version>${jakarta.httpcore.version}</version>
-			<properties>
-				<module>true</module>
-			</properties>
+			
 		</dependency>
 		<dependency>
 			<groupId>commons-codec</groupId>
@@ -288,6 +287,14 @@
 				<module>true</module>
 			</properties>
 		</dependency>
+	    <dependency>
+          <groupId>woden</groupId>
+          <artifactId>woden-api</artifactId>
+          <version>${woden.version}</version>
+          <properties>
+              <module>true</module>
+          </properties>
+       </dependency>
 	</dependencies>

 

 	<!-- ================================= -->

diff --git a/src/org/apache/kandula/context/CoordinationContext.java b/src/org/apache/kandula/context/CoordinationContext.java
index aaf1ae8..82d3f78 100644
--- a/src/org/apache/kandula/context/CoordinationContext.java
+++ b/src/org/apache/kandula/context/CoordinationContext.java
@@ -20,7 +20,7 @@
 import org.apache.axis2.addressing.EndpointReference;
 import org.apache.kandula.context.impl.ADBCoordinationContext;
 import org.apache.kandula.context.impl.SimpleCoordinationContext;
-import org.oasis_open.docs.ws_tx.wscoor._2006._06.CoordinationContext_type3;
+import org.oasis_open.docs.ws_tx.wscoor._2006._06.CoordinationContext_type0;
 
 public interface CoordinationContext {
 	public static final class Factory {
@@ -34,7 +34,7 @@
 					epr);
 		}
 		
-		public static CoordinationContext newContext(CoordinationContext_type3 context_type3) {
+		public static CoordinationContext newContext(CoordinationContext_type0 context_type3) {
 			return new ADBCoordinationContext(context_type3);
 		}
 
@@ -60,5 +60,5 @@
 
 	public abstract void setRegistrationService(EndpointReference value);
 
-	public abstract OMElement toOM();
+	public abstract OMElement toOM() throws Exception;
 }
diff --git a/src/org/apache/kandula/context/impl/ADBCoordinationContext.java b/src/org/apache/kandula/context/impl/ADBCoordinationContext.java
index c24aa16..18a9485 100644
--- a/src/org/apache/kandula/context/impl/ADBCoordinationContext.java
+++ b/src/org/apache/kandula/context/impl/ADBCoordinationContext.java
@@ -26,12 +26,12 @@
 import org.apache.kandula.Constants;
 import org.apache.kandula.context.CoordinationContext;
 import org.apache.kandula.utility.EndpointReferenceFactory;
-import org.oasis_open.docs.ws_tx.wscoor._2006._06.CoordinationContext_type3;
+import org.oasis_open.docs.ws_tx.wscoor._2006._06.CoordinationContext_type0;
 
 public class ADBCoordinationContext implements CoordinationContext {
 
-	CoordinationContext_type3 context_type3;
-	public ADBCoordinationContext(CoordinationContext_type3 context_type3) {
+	CoordinationContext_type0 context_type3;
+	public ADBCoordinationContext(CoordinationContext_type0 context_type3) {
 		super();
 		this.context_type3 = context_type3;
 	}
@@ -69,7 +69,7 @@
 		// TODO Auto-generated method stub
 		
 	}
-	public OMElement toOM() {
+	public OMElement toOM() throws Exception {
 		return context_type3.getOMElement(new QName(Constants.WS_COOR,"CoordinationContext"),
                 org.apache.axiom.om.OMAbstractFactory.getOMFactory());
 	}
diff --git a/src/org/apache/kandula/initiator/TransactionManager.java b/src/org/apache/kandula/initiator/TransactionManager.java
index 5bb7dfb..617ce56 100644
--- a/src/org/apache/kandula/initiator/TransactionManager.java
+++ b/src/org/apache/kandula/initiator/TransactionManager.java
@@ -35,7 +35,7 @@
 import org.apache.kandula.wsat.completion.CompletionInitiatorServiceListener;

 import org.apache.kandula.wscoor.ActivationServiceStub;

 import org.apache.kandula.wscoor.RegistrationServiceStub;

-import org.oasis_open.docs.ws_tx.wscoor._2006._06.CoordinationContext_type3;

+import org.oasis_open.docs.ws_tx.wscoor._2006._06.CoordinationContext_type0;

 import org.oasis_open.docs.ws_tx.wscoor._2006._06.CreateCoordinationContext;

 import org.oasis_open.docs.ws_tx.wscoor._2006._06.CreateCoordinationContextResponse;

 import org.oasis_open.docs.ws_tx.wscoor._2006._06.CreateCoordinationContextResponseType;

@@ -179,7 +179,7 @@
 				.CreateCoordinationContextOperation(context);

 		CreateCoordinationContextResponseType createCoordinationContextResponse = response

 				.getCreateCoordinationContextResponse();

-		CoordinationContext_type3 coordinationContextType = createCoordinationContextResponse.getCoordinationContext();

+		CoordinationContext_type0 coordinationContextType = createCoordinationContextResponse.getCoordinationContext();

 		coordinationContextType.setExtraAttributes(null);

 		CoordinationContext coordinationContext = new ADBCoordinationContext(

 				coordinationContextType);

diff --git a/src/org/apache/kandula/initiator/TransactionOutHandler.java b/src/org/apache/kandula/initiator/TransactionOutHandler.java
index dd1837b..66a8167 100644
--- a/src/org/apache/kandula/initiator/TransactionOutHandler.java
+++ b/src/org/apache/kandula/initiator/TransactionOutHandler.java
@@ -33,7 +33,7 @@
 import org.apache.kandula.context.AbstractContext;

 import org.apache.kandula.context.CoordinationContext;

 import org.apache.kandula.faults.AbstractKandulaException;

-import org.oasis_open.docs.ws_tx.wscoor._2006._06.CoordinationContext_type3;

+import org.oasis_open.docs.ws_tx.wscoor._2006._06.CoordinationContext_type0;

 import org.xmlsoap.schemas.ws._2004._08.addressing.ReferenceParametersType;

 

 public class TransactionOutHandler extends AbstractHandler {

@@ -41,24 +41,28 @@
 	/**

 	 * Field log

 	 */

-	private static final Log log = LogFactory.getLog(TransactionOutHandler.class);

+	private static final Log log = LogFactory

+			.getLog(TransactionOutHandler.class);

 

 	private static final long serialVersionUID = 4133392345837905499L;

 

-	public InvocationResponse invoke(MessageContext msgContext) throws AxisFault {

+	public InvocationResponse invoke(MessageContext msgContext)

+			throws AxisFault {

 

 		String wsaAction = msgContext.getWSAAction();

 		if (!(Constants.WS_COOR_CREATE_COORDINATIONCONTEXT.equals(wsaAction))

 				&& !(Constants.WS_COOR_REGISTER.equals(wsaAction))

-				&& !(Constants.WS_AT_COMMIT.equals(wsaAction)) && !(Constants.WS_AT_ROLLBACK.equals(wsaAction))) {

+				&& !(Constants.WS_AT_COMMIT.equals(wsaAction))

+				&& !(Constants.WS_AT_ROLLBACK.equals(wsaAction))) {

 			Object context = null;

 			try {

 				context = TransactionManager.getTransaction();

 			} catch (AbstractKandulaException e) {

-				throw  AxisFault.makeFault(e);

+				throw AxisFault.makeFault(e);

 			}

 			if (context == null) {

-				context = msgContext.getProperty(Constants.Configuration.TRANSACTION_CONTEXT);

+				context = msgContext

+						.getProperty(Constants.Configuration.TRANSACTION_CONTEXT);

 			}

 			// We let the message to pass through if no transaction is found in

 			// the thread or in msgContext

@@ -67,39 +71,54 @@
 						.getProperty(Constants.Configuration.PARTICIPANT_IDENTIFIER);

 				AbstractContext txContext = (AbstractContext) context;

 				SOAPHeader soapHeader = msgContext.getEnvelope().getHeader();

-				CoordinationContext coorContext = txContext.getCoordinationContext();

-	

-				//ws-ba users can set a identifier for the participants

-				if (registrationID != null) {

-					CoordinationContext_type3 context_type32 = null;

-					ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();

-					try {

+				CoordinationContext coorContext = txContext

+						.getCoordinationContext();

+

+				try {

+					// ws-ba users can set a identifier for the participants

+					if (registrationID != null) {

+						CoordinationContext_type0 context_type32 = null;

+						ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();

+

 						coorContext.toOM().serialize(byteArrayOutputStream);

-						context_type32 = CoordinationContext_type3.Factory.parse(StAXUtils

-								.createXMLStreamReader(new ByteArrayInputStream(

-										byteArrayOutputStream.toByteArray())));

+						context_type32 = CoordinationContext_type0.Factory

+								.parse(StAXUtils

+										.createXMLStreamReader(new ByteArrayInputStream(

+												byteArrayOutputStream

+														.toByteArray())));

 						context_type32.setExtraAttributes(null);

-					} catch (Exception e) {

-						throw AxisFault.makeFault(e);

+

+						ReferenceParametersType referenceParametersType = context_type32

+								.getRegistrationService()

+								.getReferenceParameters();

+						OMElement omElement = soapHeader.getOMFactory()

+								.createOMElement(

+										Constants.PARTICIPANT_ID_PARAMETER,

+										null);

+						omElement.setText((String) registrationID);

+						referenceParametersType.addExtraElement(omElement);

+						soapHeader.addChild(context_type32.getOMElement(

+								new QName(Constants.WS_COOR,

+										"CoordinationContext"), soapHeader

+										.getOMFactory()));

+

+						log.info("Transaction Context found for message ID"

+								+ msgContext.getMessageID()

+								+ ". Participant ID :" + registrationID);

+

+					} else {

+						soapHeader.addChild(coorContext.toOM());

+						log.info("Transaction Context found for message ID"

+								+ msgContext.getMessageID());

 					}

-					ReferenceParametersType referenceParametersType = context_type32

-							.getRegistrationService().getReferenceParameters();

-					OMElement omElement = soapHeader.getOMFactory().createOMElement(

-							Constants.PARTICIPANT_ID_PARAMETER, null);

-					omElement.setText((String) registrationID);

-					referenceParametersType.addExtraElement(omElement);

-					soapHeader.addChild(context_type32.getOMElement(new QName(Constants.WS_COOR,

-							"CoordinationContext"), soapHeader.getOMFactory()));

-					log.info("Transaction Context found for message ID" + msgContext.getMessageID()

-							+ ". Participant ID :" + registrationID);

-				} else {

-					soapHeader.addChild(coorContext.toOM());

-					log.info("Transaction Context found for message ID" + msgContext.getMessageID());

+				} catch (Exception e) {

+					throw AxisFault.makeFault(e);

 				}

 

 			} else {

-				log.debug("Transaction Handler Engaged. "

-						+ "But no transaction information was found in the thread.");

+				log

+						.debug("Transaction Handler Engaged. "

+								+ "But no transaction information was found in the thread.");

 			}

 		}

 		return InvocationResponse.CONTINUE;

diff --git a/src/org/apache/kandula/wsat/AbstractATNotifierStub.java b/src/org/apache/kandula/wsat/AbstractATNotifierStub.java
index 40f5d9d..c9bd7b5 100644
--- a/src/org/apache/kandula/wsat/AbstractATNotifierStub.java
+++ b/src/org/apache/kandula/wsat/AbstractATNotifierStub.java
@@ -17,6 +17,7 @@
 package org.apache.kandula.wsat;
 
 import java.io.IOException;
+import java.util.Random;
 
 import org.apache.axiom.om.OMAbstractFactory;
 import org.apache.axiom.om.OMElement;
@@ -27,6 +28,7 @@
 import org.apache.axis2.addressing.EndpointReference;
 import org.apache.axis2.client.OperationClient;
 import org.apache.axis2.client.Options;
+import org.apache.axis2.client.ServiceClient;
 import org.apache.axis2.context.ConfigurationContext;
 import org.apache.axis2.context.MessageContext;
 import org.apache.axis2.context.ServiceContext;
@@ -49,18 +51,25 @@
 	protected ServiceContext serviceContext;
 
 	protected EndpointReference toEPR;
+	
+	protected ServiceClient  _serviceClient;
 
+	//TODO: Review this with the latest axis2 changes
 	public AbstractATNotifierStub(ConfigurationContext configurationContext)
 			throws AbstractKandulaException {
-		this.service = new AxisService("annonService" + this.hashCode());
+
+		this.service = new AxisService("annonService" + new Random().nextInt());
 		try {
-			configurationContext.getAxisConfiguration().addService(service);
+		//	configurationContext.getAxisConfiguration().addService(service);
+		
+	    _serviceClient = new org.apache.axis2.client.ServiceClient(configurationContext,service);
 		} catch (AxisFault e1) {
 			throw new KandulaGeneralException(e1);
 		}
-		ServiceGroupContext sgc = new ServiceGroupContext(configurationContext,
-				(AxisServiceGroup) this.service.getParent());
-		this.serviceContext = new ServiceContext(service, sgc);
+//	        
+//		ServiceGroupContext sgc = new ServiceGroupContext(configurationContext,
+//				(AxisServiceGroup) this.service.getParent());
+//		this.serviceContext = new ServiceContext(service, sgc);
 	}
 
 	/**
@@ -83,9 +92,8 @@
 		try {
 			Options options = new Options();
 			messageContext = new MessageContext();
-			final OperationClient client = operations[opIndex].createClient(
-					serviceContext, options);
-
+			final OperationClient client = _serviceClient.createClient(operations[opIndex].getName());
+				
 			SOAPFactory factory = OMAbstractFactory.getSOAP12Factory();
 			SOAPEnvelope env = factory.getDefaultEnvelope();
 
@@ -107,6 +115,7 @@
 			// System.out.println(operations[opIndex]);
 			client.addMessageContext(messageContext);
 			/*
+			 * TODO: Fix the following
 			 * hacking till we get fire and forget corretly in Axis2
 			 */
 			Thread thread = new Thread(new Runnable() {
diff --git a/src/org/apache/kandula/wscoor/ActivationServiceSkeleton.java b/src/org/apache/kandula/wscoor/ActivationServiceSkeleton.java
index e9e4846..26766ed 100644
--- a/src/org/apache/kandula/wscoor/ActivationServiceSkeleton.java
+++ b/src/org/apache/kandula/wscoor/ActivationServiceSkeleton.java
@@ -6,30 +6,22 @@
  */
 package org.apache.kandula.wscoor;
 
-import java.util.Map;
-
-import org.apache.axiom.om.OMElement;
 import org.apache.axis2.AxisFault;
 import org.apache.axis2.context.ServiceContext;
 import org.apache.axis2.databinding.types.URI;
 import org.apache.axis2.databinding.types.UnsignedInt;
 import org.apache.axis2.databinding.types.URI.MalformedURIException;
-import org.apache.kandula.Constants;
 import org.apache.kandula.context.AbstractContext;
 import org.apache.kandula.context.CoordinationContext;
 import org.apache.kandula.coordinator.Coordinator;
 import org.apache.kandula.faults.AbstractKandulaException;
-import org.apache.kandula.storage.StorageUtils;
 import org.apache.kandula.utility.EndpointReferenceFactory;
-import org.oasis_open.docs.ws_tx.wscoor._2006._06.CoordinationContext_type3;
+import org.oasis_open.docs.ws_tx.wscoor._2006._06.CoordinationContext_type0;
 import org.oasis_open.docs.ws_tx.wscoor._2006._06.CreateCoordinationContextResponse;
 import org.oasis_open.docs.ws_tx.wscoor._2006._06.CreateCoordinationContextResponseType;
 import org.oasis_open.docs.ws_tx.wscoor._2006._06.CreateCoordinationContextType;
 import org.oasis_open.docs.ws_tx.wscoor._2006._06.Expires_type0;
-import org.oasis_open.docs.ws_tx.wscoor._2006._06.Identifier_type1;
-import org.xmlsoap.schemas.ws._2004._08.addressing.AttributedURI;
-import org.xmlsoap.schemas.ws._2004._08.addressing.EndpointReferenceType;
-import org.xmlsoap.schemas.ws._2004._08.addressing.ReferenceParametersType;
+import org.oasis_open.docs.ws_tx.wscoor._2006._06.Identifier_type0;
 
 /**
  * ActivationServiceSkeleton java skeleton for the axisService
@@ -74,7 +66,7 @@
 			CoordinationContext coordinationContext = context.getCoordinationContext();
 
 			// filling the data bounded coordination context
-			CoordinationContext_type3 coordinationContext_type3 = new CoordinationContext_type3();
+			CoordinationContext_type0 coordinationContext_type3 = new CoordinationContext_type0();
 			coordinationContext_type3.setCoordinationType(new URI(coordinationContext
 					.getCoordinationType()));
 			Expires_type0 expires_type0 = new Expires_type0();
@@ -84,7 +76,7 @@
 			coordinationContext_type3.setRegistrationService(EndpointReferenceFactory
 					.getEPRTypeFromEPR(coordinationContext.getRegistrationService()));
 
-			Identifier_type1 identifier_type1 = new Identifier_type1();
+			Identifier_type0 identifier_type1 = new Identifier_type0();
 			identifier_type1.setAnyURI(new URI("http", "thilina"));
 			coordinationContext_type3.setIdentifier(identifier_type1);
 
diff --git a/test-resources/KandulaDemoService/KandulaDemoService.wsdl b/test-resources/KandulaDemoService/KandulaDemoService.wsdl
index 61ed9d3..02dcf95 100644
--- a/test-resources/KandulaDemoService/KandulaDemoService.wsdl
+++ b/test-resources/KandulaDemoService/KandulaDemoService.wsdl
@@ -1,6 +1,6 @@
 <wsdl:definitions xmlns:axis2="http://integration.kandula.apache.org"
 	xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
-	xmlns:ns0="http://integration.kandula.apache.org/xsd"
+	xmlns:ns0="http://integration.kandula.apache.org"
 	xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
 	xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
 	xmlns:ns1="http://org.apache.axis2/xsd"
@@ -10,9 +10,9 @@
 	targetNamespace="http://integration.kandula.apache.org">
 	<wsdl:documentation>Sample service for Testing</wsdl:documentation>
 	<wsdl:types>
-		<xs:schema xmlns:ns="http://integration.kandula.apache.org/xsd"
+		<xs:schema xmlns:ns="http://integration.kandula.apache.org"
 			attributeFormDefault="qualified" elementFormDefault="qualified"
-			targetNamespace="http://integration.kandula.apache.org/xsd">
+			targetNamespace="http://integration.kandula.apache.org">
 			<xs:element name="creditOperation">
 				<xs:complexType>
 					<xs:sequence>
@@ -137,4 +137,4 @@
 				location="http://localhost:8081/axis2/services/KandulaDemoService" />
 		</wsdl:port>
 	</wsdl:service>
-</wsdl:definitions>
\ No newline at end of file
+</wsdl:definitions>
diff --git a/test/interop/TestServiceStub.java b/test/interop/TestServiceStub.java
index 63f3539..041d01f 100644
--- a/test/interop/TestServiceStub.java
+++ b/test/interop/TestServiceStub.java
@@ -28,14 +28,13 @@
 import org.apache.axis2.addressing.EndpointReference;

 import org.apache.axis2.client.OperationClient;

 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.context.MessageContext;

 import org.apache.axis2.context.ServiceContext;

-import org.apache.axis2.context.ServiceGroupContext;

 import org.apache.axis2.description.AxisOperation;

 import org.apache.axis2.description.AxisService;

-import org.apache.axis2.description.AxisServiceGroup;

 import org.apache.axis2.description.OutInAxisOperation;

 

 /**

@@ -52,6 +51,8 @@
 	private ServiceContext serviceContext;

 

 	private EndpointReference toEPR;

+	

+	private ServiceClient _serviceClient;

 

 	private static org.apache.axis2.description.AxisOperation[] operations;

 	{// creating the Service

@@ -78,10 +79,7 @@
 				.createConfigurationContextFromFileSystem(axis2Home, axis2Home

 						+ "/axis2.xml");

 		configurationContext.getAxisConfiguration().addService(_service);

-		ServiceGroupContext sgc = new ServiceGroupContext(

-				this.configurationContext, (AxisServiceGroup) _service

-						.getParent());

-		this.serviceContext = new ServiceContext(_service, sgc);

+	    _serviceClient = new org.apache.axis2.client.ServiceClient(configurationContext,_service);

 

 	}

 

diff --git a/test/org/apache/kandula/integration/CompletionCommitTest.java b/test/org/apache/kandula/integration/CompletionCommitTest.java
index 8b72438..c65fa8f 100644
--- a/test/org/apache/kandula/integration/CompletionCommitTest.java
+++ b/test/org/apache/kandula/integration/CompletionCommitTest.java
@@ -28,14 +28,12 @@
 import org.apache.axis2.context.ConfigurationContextFactory;

 import org.apache.axis2.transport.http.SimpleHTTPServer;

 import org.apache.kandula.initiator.TransactionManager;

-import org.apache.kandula.integration.xsd.CreditOperation;

-import org.apache.kandula.integration.xsd.DebitOperation;

 

 public class CompletionCommitTest extends TestCase {

 

 	private String repository = "target/testing-repository";

 

-	private KandulaDemoServiceKandulaDemoServiceSOAP11Port_httpStub stub;

+	private KandulaDemoServiceStub stub;

 

 	private SimpleHTTPServer server;

 

@@ -49,7 +47,7 @@
 		.createConfigurationContextFromFileSystem("target/initiator-repository", "target/initiator-repository"

 				+ "/axis2.xml");

 

-		stub = new KandulaDemoServiceKandulaDemoServiceSOAP11Port_httpStub(configurationContext, "http://localhost:8081/axis2/services/KandulaDemoService");

+		stub = new KandulaDemoServiceStub(configurationContext, "http://localhost:8081/axis2/services/KandulaDemoService");

 	}

 

 	protected void setUp() throws Exception {

diff --git a/test/org/apache/kandula/integration/KandulaDemoService.java b/test/org/apache/kandula/integration/KandulaDemoService.java
index 296651a..15ae251 100644
--- a/test/org/apache/kandula/integration/KandulaDemoService.java
+++ b/test/org/apache/kandula/integration/KandulaDemoService.java
@@ -28,18 +28,19 @@
 
 	}
 
-	public OMElement creditOperation(OMElement element) {
-		element.build();
-		element.detach();
-//		System.out.println("done com");
-		return element;
+	public void creditOperation() {
+//		element.build();
+//		element.detach();
+////		System.out.println("done com");
+//		return element;
+		
 	}
 
 
-	public OMElement debitOperation(OMElement element) throws AxisFault {
-		element.build();
-		element.detach();
-//		MessageContext msgcts = MessageContext.getCurrentMessageContext();
+	public void debitOperation() throws AxisFault {
+//		element.build();
+//		element.detach();
+////		MessageContext msgcts = MessageContext.getCurrentMessageContext();
 //		String reqID = (String) msgcts.getProperty(AbstractContext.REQUESTER_ID);
 //		ParticipantContext participantContext = (ParticipantContext) StorageUtils
 //		.getContext(reqID);
@@ -50,7 +51,7 @@
 //			throw new AxisFault(e);
 //		}
 //		throw new AxisFault("thilina");
-		return element;
+//		return element;
 	}
 
 }
\ No newline at end of file
diff --git a/test/org/apache/kandula/integration/ba/BAParticipantRegistrationTest.java b/test/org/apache/kandula/integration/ba/BAParticipantRegistrationTest.java
index 634f20c..6eb8667 100644
--- a/test/org/apache/kandula/integration/ba/BAParticipantRegistrationTest.java
+++ b/test/org/apache/kandula/integration/ba/BAParticipantRegistrationTest.java
@@ -25,15 +25,15 @@
 import org.apache.axis2.transport.http.SimpleHTTPServer;

 import org.apache.kandula.Constants;

 import org.apache.kandula.ba.MixedBusinessActivity;

-import org.apache.kandula.integration.KandulaDemoServiceKandulaDemoServiceSOAP11Port_httpStub;

-import org.apache.kandula.integration.xsd.CreditOperation;

-import org.apache.kandula.integration.xsd.DebitOperation;

+import org.apache.kandula.integration.CreditOperation;

+import org.apache.kandula.integration.DebitOperation;

+import org.apache.kandula.integration.KandulaDemoServiceStub;

 

 public class BAParticipantRegistrationTest extends TestCase {

 

 	private String repository = "target/testing-repository";

 

-	private KandulaDemoServiceKandulaDemoServiceSOAP11Port_httpStub stub;

+	private KandulaDemoServiceStub stub;

 

 	private SimpleHTTPServer server;

 

@@ -47,7 +47,7 @@
 				.createConfigurationContextFromFileSystem("target/initiator-repository",

 						"target/initiator-repository" + "/axis2.xml");

 

-		stub = new KandulaDemoServiceKandulaDemoServiceSOAP11Port_httpStub(configurationContext,

+		stub = new KandulaDemoServiceStub(configurationContext,

 				"http://localhost:8081/axis2/services/KandulaBADemoService");

 	}