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 sa...@apache.org on 2007/05/03 08:51:21 UTC

svn commit: r534729 - in /webservices/axis2/scratch/c/neethi/axis2c/src: core/engine/conf.c modules/mod_addr/module.xml

Author: samisa
Date: Wed May  2 23:51:20 2007
New Revision: 534729

URL: http://svn.apache.org/viewvc?view=rev&rev=534729
Log:
Fixed the addressing dispatch problem

Modified:
    webservices/axis2/scratch/c/neethi/axis2c/src/core/engine/conf.c
    webservices/axis2/scratch/c/neethi/axis2c/src/modules/mod_addr/module.xml

Modified: webservices/axis2/scratch/c/neethi/axis2c/src/core/engine/conf.c
URL: http://svn.apache.org/viewvc/webservices/axis2/scratch/c/neethi/axis2c/src/core/engine/conf.c?view=diff&rev=534729&r1=534728&r2=534729
==============================================================================
--- webservices/axis2/scratch/c/neethi/axis2c/src/core/engine/conf.c (original)
+++ webservices/axis2/scratch/c/neethi/axis2c/src/core/engine/conf.c Wed May  2 23:51:20 2007
@@ -154,6 +154,7 @@
     else
     {
         axis2_disp_t *uri_dispatch = NULL;
+        axis2_disp_t *add_dispatch = NULL;
 
         phase = axis2_phase_create(env, AXIS2_PHASE_TRANSPORT_IN);
         if (! phase)
@@ -166,12 +167,21 @@
         uri_dispatch = axis2_req_uri_disp_create(env);
         if (uri_dispatch)
         {
-                axis2_handler_t *handler = NULL;
-                handler = axis2_disp_get_base(uri_dispatch, env);
-                axis2_disp_free(uri_dispatch, env);
-                 axis2_phase_add_handler_at(phase, env, 0, handler);
-                axutil_array_list_add(conf->handlers, env, axis2_handler_get_handler_desc(handler, env));
-                handler = NULL;
+            axis2_handler_t *handler = NULL;
+            handler = axis2_disp_get_base(uri_dispatch, env);
+            axis2_disp_free(uri_dispatch, env);
+            axis2_phase_add_handler_at(phase, env, 0, handler);
+            axutil_array_list_add(conf->handlers, env, axis2_handler_get_handler_desc(handler, env));
+        }
+        
+        add_dispatch = axis2_addr_disp_create(env);
+        if (add_dispatch)
+        {
+            axis2_handler_t *handler = NULL;
+            handler = axis2_disp_get_base(add_dispatch, env);
+            axis2_disp_free(add_dispatch, env);
+            axis2_phase_add_handler_at(phase, env, 1, handler);
+            axutil_array_list_add(conf->handlers, env, axis2_handler_get_handler_desc(handler, env));
         }
 
         status = axutil_array_list_add(conf->
@@ -1151,7 +1161,6 @@
 {
     axis2_phase_t *dispatch = NULL;
     axis2_status_t status = AXIS2_FAILURE;
-    axis2_disp_t *add_dispatch = NULL;
     axis2_disp_t *soap_action_based_dispatch = NULL;
     axis2_disp_t *soap_msg_body_based_dispatch = NULL;
     axis2_handler_t *handler = NULL;
@@ -1177,18 +1186,7 @@
      axis2_phase_add_handler_at(dispatch, env, 0, handler);
     axutil_array_list_add(conf->handlers, env, axis2_handler_get_handler_desc(handler, env));
 
-    add_dispatch = axis2_addr_disp_create(env);
-    if (!add_dispatch)
-    {
-         axis2_phase_free(dispatch, env);
-        return AXIS2_FAILURE;
-    }
-
-    handler = axis2_disp_get_base(add_dispatch, env);
-    axis2_disp_free(add_dispatch, env);
-     axis2_phase_add_handler_at(dispatch, env, 1, handler);
-    axutil_array_list_add(conf->handlers, env, axis2_handler_get_handler_desc(handler, env));
-
+    
     soap_action_based_dispatch = axiom_soap_action_disp_create(env);
     if (!soap_action_based_dispatch)
     {

Modified: webservices/axis2/scratch/c/neethi/axis2c/src/modules/mod_addr/module.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/scratch/c/neethi/axis2c/src/modules/mod_addr/module.xml?view=diff&rev=534729&r1=534728&r2=534729
==============================================================================
--- webservices/axis2/scratch/c/neethi/axis2c/src/modules/mod_addr/module.xml (original)
+++ webservices/axis2/scratch/c/neethi/axis2c/src/modules/mod_addr/module.xml Wed May  2 23:51:20 2007
@@ -1,7 +1,7 @@
 <module name="addressing" class="axis2_mod_addr">
     <inflow>
         <handler name="AddressingInHandler" class="axis2_mod_addr">
-            <order phase="PreDispatch"/>
+            <order phase="Transport" before="addressing_based_dispatcher"/>
         </handler>
     </inflow>
 



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org