axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dami...@apache.org
Subject svn commit: r428297 - in /webservices/axis2/trunk/c/woden: include/ src/builder/ src/wsdl10/extensions/soap/ src/wsdl20/ src/wsdl20/extensions/soap/
Date Thu, 03 Aug 2006 10:02:37 GMT
Author: damitha
Date: Thu Aug  3 03:02:36 2006
New Revision: 428297

URL: http://svn.apache.org/viewvc?rev=428297&view=rev
Log:
In process of dynamic client working for wsdl2

Modified:
    webservices/axis2/trunk/c/woden/include/woden_soap_module_element.h
    webservices/axis2/trunk/c/woden/include/woden_wsdl10_soap_module_element.h
    webservices/axis2/trunk/c/woden/src/builder/reader.c
    webservices/axis2/trunk/c/woden/src/wsdl10/extensions/soap/soap_module_deserializer.c
    webservices/axis2/trunk/c/woden/src/wsdl20/binding_op.c
    webservices/axis2/trunk/c/woden/src/wsdl20/extensions/soap/soap_module.c
    webservices/axis2/trunk/c/woden/src/wsdl20/extensions/soap/soap_module_deserializer.c

Modified: webservices/axis2/trunk/c/woden/include/woden_soap_module_element.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_soap_module_element.h?rev=428297&r1=428296&r2=428297&view=diff
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_soap_module_element.h (original)
+++ webservices/axis2/trunk/c/woden/include/woden_soap_module_element.h Thu Aug  3 03:02:36
2006
@@ -101,7 +101,7 @@
     get_documentation_elements) (
             void *soap_module_element,
             const axis2_env_t *env);
- 
+   
 };
 
 union woden_soap_module_element_base

Modified: webservices/axis2/trunk/c/woden/include/woden_wsdl10_soap_module_element.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/include/woden_wsdl10_soap_module_element.h?rev=428297&r1=428296&r2=428297&view=diff
==============================================================================
--- webservices/axis2/trunk/c/woden/include/woden_wsdl10_soap_module_element.h (original)
+++ webservices/axis2/trunk/c/woden/include/woden_wsdl10_soap_module_element.h Thu Aug  3
03:02:36 2006
@@ -180,6 +180,10 @@
       (((woden_wsdl10_soap_module_element_t *) soap_module_element)->ops->\
         add_documentation_element  (soap_module_element, env, doc_el))
 
+#define WODEN_WSDL10_SOAP_MODULE_ELEMENT_GET_DOCUMENTATION_ELEMENTS(soap_module_element,
env) \
+      (((woden_wsdl10_soap_module_element_t *) soap_module_element)->ops->\
+        get_documentation_elements  (soap_module_element, env))
+
 #define WODEN_WSDL10_SOAP_MODULE_ELEMENT_SET_SOAP_ADDRESS_EXTS(soap_module_element, env,
doc_el) \
       (((woden_wsdl10_soap_module_element_t *) soap_module_element)->ops->\
         set_soap_address_exts  (soap_module_element, env, doc_el))
@@ -196,10 +200,6 @@
 #define WODEN_WSDL10_SOAP_MODULE_ELEMENT_GET_SOAP_BINDING_OP_EXTS(soap_module_element, env)
\
       (((woden_wsdl10_soap_module_element_t *) soap_module_element)->ops->\
         get_soap_binding_op_exts  (soap_module_element, env))
-
-#define WODEN_WSDL10_SOAP_MODULE_ELEMENT_GET_DOCUMENTATION_ELEMENTS(soap_module_element,
env) \
-      (((woden_wsdl10_soap_module_element_t *) soap_module_element)->ops->\
-        get_documentation_elements  (soap_module_element, env))
 
 /** @} */
 #ifdef __cplusplus

Modified: webservices/axis2/trunk/c/woden/src/builder/reader.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/src/builder/reader.c?rev=428297&r1=428296&r2=428297&view=diff
==============================================================================
--- webservices/axis2/trunk/c/woden/src/builder/reader.c (original)
+++ webservices/axis2/trunk/c/woden/src/builder/reader.c Thu Aug  3 03:02:36 2006
@@ -439,7 +439,6 @@
  */
 static axis2_uri_t *
 get_uri(
-        void *reader,
         const axis2_env_t *env,
         const axis2_char_t *uri_str);
 
@@ -618,7 +617,6 @@
     void *ext_reg = NULL;
     axis2_uri_t *uri = NULL;
     axis2_char_t *target_namespc = NULL;
-    axis2_uri_t *target_namespc_uri = NULL;
     axiom_element_t *desc_el = NULL;
     axis2_hash_t *attrs = NULL;
     axis2_hash_index_t *index = NULL;
@@ -660,8 +658,10 @@
         WODEN_DESC_ELEMENT_SET_EXT_REGISTRY(desc, env, ext_reg);
     }
   
-    uri = get_uri(reader, env, document_base_uri);
+    uri = get_uri(env, document_base_uri);
     WODEN_DESC_ELEMENT_SET_DOCUMENT_BASE_URI(desc, env, uri);
+    AXIS2_URI_FREE(uri, env);
+    uri = NULL;
 
     desc_el = AXIOM_NODE_GET_DATA_ELEMENT(desc_el_node, env);
     target_namespc = AXIOM_ELEMENT_GET_ATTRIBUTE_VALUE_BY_NAME(desc_el, 
@@ -669,8 +669,11 @@
     
     if(NULL != target_namespc)
     {
-        target_namespc_uri = get_uri(reader, env, target_namespc);
+        axis2_uri_t *target_namespc_uri = NULL;
+
+        target_namespc_uri = get_uri(env, target_namespc);
         WODEN_DESC_ELEMENT_SET_TARGET_NAMESPACE(desc, env, target_namespc_uri);
+        AXIS2_URI_FREE(target_namespc_uri, env);
     }
     
     /* parse the namespace declarations */
@@ -693,7 +696,7 @@
         namespc_uri = AXIOM_NAMESPACE_GET_URI(namespc, env);
         local_part = AXIOM_ATTRIBUTE_GET_LOCALNAME(attr, env);
         value = AXIOM_ATTRIBUTE_GET_VALUE(attr, env);
-        uri = get_uri(reader, env, value);
+        uri = get_uri(env, value);
         if(0 == AXIS2_STRCMP(WODEN_NS_URI_XMLNS, namespc_uri))
         {
             if(0 == AXIS2_STRCMP(WODEN_ATTR_XMLNS, local_part))
@@ -706,6 +709,8 @@
                 WODEN_DESC_ELEMENT_ADD_NAMESPACE(desc, env, NULL, uri); 
             }
         }
+        AXIS2_URI_FREE(uri, env);
+        uri = NULL;
 
     }
     desc = woden_desc_to_attr_extensible(desc, env); 
@@ -947,8 +952,9 @@
         axis2_uri_t *uri = NULL;
 
         /* TODO handle missing namespace attribute (REQUIRED attr) */
-        uri = get_uri(reader, env, namespc_uri);
+        uri = get_uri(env, namespc_uri);
         WODEN_IMPORT_SET_NAMESPACE(imp, env, uri);
+        AXIS2_URI_FREE(uri, env);
     }
     
     if(NULL != location_uri)
@@ -958,8 +964,9 @@
         
         /* TODO handle missing locationURI (OPTIONAL attr) */
         imp = woden_import_to_import_element(imp, env);
-        uri = get_uri(reader, env, location_uri);
+        uri = get_uri(env, location_uri);
         WODEN_IMPORT_ELEMENT_SET_LOCATION(imp, env, uri);
+        AXIS2_URI_FREE(uri, env);
         
         imported_desc = get_wsdl_from_location(reader, env, location_uri, desc, 
                 wsdl_modules);
@@ -999,9 +1006,10 @@
         axis2_uri_t *uri = NULL;
         void *included_desc = NULL;
        
-        uri = get_uri(reader, env, location_uri);
+        uri = get_uri(env, location_uri);
         include = woden_include_to_include_element(include, env);
         WODEN_INCLUDE_ELEMENT_SET_LOCATION(include, env, uri);
+        AXIS2_URI_FREE(uri, env);
         
         included_desc = get_wsdl_from_location(reader, env, location_uri, desc, 
                 wsdl_modules);
@@ -1130,8 +1138,9 @@
     if(NULL != tns)
     {
         void *base = WODEN_INLINED_SCHEMA_GET_BASE_IMPL(schema, env);
-        axis2_uri_t *uri = get_uri(reader, env, tns);
+        axis2_uri_t *uri = get_uri(env, tns);
         WODEN_SCHEMA_SET_NAMESPACE(base, env, uri);
+        AXIS2_URI_FREE(uri, env);
     }
     desc = woden_desc_to_desc_element(desc, env);
     base_uri = WODEN_DESC_ELEMENT_GET_DOCUMENT_BASE_URI(desc, env);
@@ -1211,16 +1220,20 @@
             WODEN_ATTR_NAMESPACE);
     if(NULL != ns)
     {
-        uri = get_uri(reader, env, ns);
+        uri = get_uri(env, ns);
         schema = woden_imported_schema_to_schema(schema, env);
         WODEN_SCHEMA_SET_NAMESPACE(schema, env, uri);
+        AXIS2_URI_FREE(uri, env);
+        uri = NULL;
     }
     sloc = AXIOM_ELEMENT_GET_ATTRIBUTE_VALUE_BY_NAME(import_el, env, 
             WODEN_ATTR_SCHEMA_LOCATION);
     if(NULL != sloc)
     {
-    uri = get_uri(reader, env, sloc);
+    uri = get_uri(env, sloc);
     WODEN_IMPORTED_SCHEMA_SET_LOCATION(schema, env, uri);
+    AXIS2_URI_FREE(uri, env);
+    uri = NULL;
     }
         
     if(NULL == WODEN_SCHEMA_GET_NAMESPACE(schema, env))
@@ -1366,8 +1379,9 @@
             axis2_uri_t *uri = NULL;
             uri_str = AXIS2_ARRAY_LIST_GET(string_list, env, i);
             intface = woden_interface_to_interface_element(intface, env);
-            uri = get_uri(reader, env, uri_str);
+            uri = get_uri(env, uri_str);
             WODEN_INTERFACE_ELEMENT_ADD_STYLE_DEFAULT_URI(intface, env, uri);
+            AXIS2_URI_FREE(uri, env);
         }
     }
     
@@ -1659,9 +1673,10 @@
         for(i = 0; i < size; i++)
         {
             uri_str = AXIS2_ARRAY_LIST_GET(str_list, env, i);
-            uri = get_uri(reader, env, uri_str);
+            uri = get_uri(env, uri_str);
             op = woden_interface_op_to_interface_op_element(op, env);
             WODEN_INTERFACE_OP_ELEMENT_ADD_STYLE_URI(op, env, uri);
+            AXIS2_URI_FREE(uri, env);
         }
     }
      
@@ -1671,9 +1686,10 @@
     {
         axis2_uri_t *uri = NULL;
         
-        uri = get_uri(reader, env, pat);
+        uri = get_uri(env, pat);
         op = woden_interface_op_to_interface_op_element(op, env);
         WODEN_INTERFACE_OP_ELEMENT_SET_PATTERN(op, env, uri);
+        AXIS2_URI_FREE(uri, env);
     }
     op = woden_interface_op_to_attr_extensible(op, env);
     status = parse_ext_attributes(reader, env, op_el_node, "interface_op_element", 
@@ -2290,9 +2306,10 @@
     {
         axis2_uri_t *uri = NULL;
 
-        uri = get_uri(reader, env, type);
+        uri = get_uri(env, type);
         binding = woden_binding_to_binding_element(binding, env);
         WODEN_BINDING_ELEMENT_SET_TYPE(binding, env, uri);
+        AXIS2_URI_FREE(uri, env);
     }
     
     /* TODO extends attribute */
@@ -3370,7 +3387,6 @@
     axis2_qname_t *binding_qn = NULL;
     axis2_qname_t *attr_binding = NULL;
     axis2_qname_t *attr_address = NULL;
-    axis2_uri_t *address_uri = NULL;
     axiom_element_t *endpoint_el = NULL;
     axiom_element_t *temp_el = NULL;
     axiom_node_t *temp_el_node = NULL;
@@ -3438,9 +3454,12 @@
    
     if(NULL != address)
     {
-        address_uri = get_uri(reader, env, address);
+        axis2_uri_t *address_uri = NULL;
+
+        address_uri = get_uri(env, address);
         endpoint = woden_endpoint_to_endpoint_element(endpoint, env);
         WODEN_ENDPOINT_ELEMENT_SET_ADDRESS(endpoint, env, address_uri);
+        AXIS2_URI_FREE(address_uri, env);
     }
     
     endpoint = woden_endpoint_to_attr_extensible(endpoint, env); 
@@ -3544,9 +3563,10 @@
    
     if(NULL != ref)
     {
-        axis2_uri_t *ref_uri = get_uri(reader, env, ref);
+        axis2_uri_t *ref_uri = get_uri(env, ref);
         feature = woden_feature_to_feature_element(feature, env);
         WODEN_FEATURE_ELEMENT_SET_REF(feature, env, ref_uri);
+        AXIS2_URI_FREE(ref_uri, env);
     }
  
     attr_req = axis2_qname_create_from_string(env, WODEN_ATTR_REQUIRED);
@@ -3664,9 +3684,10 @@
    
     if(NULL != ref)
     {
-        axis2_uri_t *ref_uri = get_uri(reader, env, ref);
+        axis2_uri_t *ref_uri = get_uri(env, ref);
         property = woden_property_to_property_element(property, env);
         WODEN_PROPERTY_ELEMENT_SET_REF(property, env, ref_uri);
+        AXIS2_URI_FREE(ref_uri, env);
     }
  
     property = woden_property_to_attr_extensible(property, env); 
@@ -4019,23 +4040,12 @@
  */
 static axis2_uri_t *
 get_uri(
-        void *reader,
         const axis2_env_t *env,
         const axis2_char_t *uri_str)
 {
-    woden_reader_impl_t *reader_impl = NULL;
-
     AXIS2_ENV_CHECK(env, NULL);
     AXIS2_PARAM_CHECK(env->error, uri_str, NULL);
-    reader_impl = INTF_TO_IMPL(reader);
-
-    if(reader_impl->f_temp_uri)
-    {
-        AXIS2_URI_FREE(reader_impl->f_temp_uri, env);
-        reader_impl->f_temp_uri = NULL;
-    }
 
-    reader_impl->f_temp_uri = axis2_uri_parse_string(env, uri_str);
-    return reader_impl->f_temp_uri;
+    return axis2_uri_parse_string(env, uri_str);
 }
 

Modified: webservices/axis2/trunk/c/woden/src/wsdl10/extensions/soap/soap_module_deserializer.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/src/wsdl10/extensions/soap/soap_module_deserializer.c?rev=428297&r1=428296&r2=428297&view=diff
==============================================================================
--- webservices/axis2/trunk/c/woden/src/wsdl10/extensions/soap/soap_module_deserializer.c
(original)
+++ webservices/axis2/trunk/c/woden/src/wsdl10/extensions/soap/soap_module_deserializer.c
Thu Aug  3 03:02:36 2006
@@ -333,7 +333,11 @@
     /*soap_mod = WODEN_WSDL10_EXT_REGISTRY_QUERY_EXT_ELEMENT_TYPE(ext_reg, env, 
             parent_type, element_type);*/
     soap_mod = woden_wsdl10_soap_module_create(env);
-
+    if(!soap_mod)
+    {
+        AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+        return NULL;
+    }
     soap_mod = woden_wsdl10_soap_module_to_ext_element(soap_mod, env);
     WODEN_EXT_ELEMENT_SET_EXT_TYPE(soap_mod, env, element_type);
     soap_mod = woden_wsdl10_soap_module_to_soap_module_element(soap_mod, env);

Modified: webservices/axis2/trunk/c/woden/src/wsdl20/binding_op.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/src/wsdl20/binding_op.c?rev=428297&r1=428296&r2=428297&view=diff
==============================================================================
--- webservices/axis2/trunk/c/woden/src/wsdl20/binding_op.c (original)
+++ webservices/axis2/trunk/c/woden/src/wsdl20/binding_op.c Thu Aug  3 03:02:36 2006
@@ -407,6 +407,11 @@
         const axis2_env_t *env)
 {
     woden_binding_op_impl_t *binding_op_impl = NULL;
+    void *configurable = NULL;
+    void *documentable = NULL;
+    void *wsdl_obj = NULL;
+    void *wsdl_el = NULL;
+    void *attr_extensible = NULL;
    
     AXIS2_ENV_CHECK(env, NULL);
     if(!binding_op)
@@ -421,9 +426,16 @@
         base.documentable_element.wsdl_element.base.attr_extensible.ops = 
         AXIS2_MALLOC(env->allocator, 
                 sizeof(woden_attr_extensible_ops_t));
+    configurable = WODEN_NESTED_CONFIGURABLE_GET_BASE_IMPL(binding_op_impl->
+            nested_configurable, env);
+    documentable = WODEN_CONFIGURABLE_GET_BASE_IMPL(configurable, env);
+    wsdl_obj = WODEN_DOCUMENTABLE_GET_BASE_IMPL(documentable, env);
+    wsdl_el = WODEN_WSDL_OBJ_GET_BASE_IMPL(wsdl_obj, env);
+    attr_extensible = WODEN_WSDL_ELEMENT_GET_ATTR_EXTENSIBLE(wsdl_el, env);
     woden_attr_extensible_resolve_methods(&(binding_op_impl->binding_op.base.
             binding_op_element.base.documentable_element.
-            wsdl_element.base.attr_extensible), env, NULL, binding_op_impl->methods);
+            wsdl_element.base.attr_extensible), env, attr_extensible, 
+            binding_op_impl->methods);
     return binding_op;
 }
 
@@ -433,6 +445,11 @@
         const axis2_env_t *env)
 {
     woden_binding_op_impl_t *binding_op_impl = NULL;
+    void *configurable = NULL;
+    void *documentable = NULL;
+    void *wsdl_obj = NULL;
+    void *wsdl_el = NULL;
+    void *element_extensible = NULL;
    
     AXIS2_ENV_CHECK(env, NULL);
     if(!binding_op)
@@ -447,9 +464,17 @@
         base.documentable_element.wsdl_element.base.element_extensible.ops = 
         AXIS2_MALLOC(env->allocator, 
                 sizeof(woden_element_extensible_ops_t));
+
+    configurable = WODEN_NESTED_CONFIGURABLE_GET_BASE_IMPL(binding_op_impl->
+            nested_configurable, env);
+    documentable = WODEN_CONFIGURABLE_GET_BASE_IMPL(configurable, env);
+    wsdl_obj = WODEN_DOCUMENTABLE_GET_BASE_IMPL(documentable, env);
+    wsdl_el = WODEN_WSDL_OBJ_GET_BASE_IMPL(wsdl_obj, env);
+    element_extensible = WODEN_WSDL_ELEMENT_GET_ELEMENT_EXTENSIBLE(wsdl_el, env);
     woden_element_extensible_resolve_methods(&(binding_op_impl->binding_op.base.
             binding_op_element.base.documentable_element.
-            wsdl_element.base.element_extensible), env, NULL, binding_op_impl->methods);
+            wsdl_element.base.element_extensible), env, element_extensible, 
+            binding_op_impl->methods);
     return binding_op;
 }
 
@@ -505,6 +530,8 @@
         woden_binding_op_to_element;
     binding_op_impl->binding_op.ops->set_interface_op_element = 
         woden_binding_op_set_interface_op_element;
+    binding_op_impl->binding_op.ops->get_interface_op = 
+        woden_binding_op_get_interface_op;
  
     binding_op_impl->methods = axis2_hash_make(env);
     if(!binding_op_impl->methods) 
@@ -570,6 +597,11 @@
 {
     woden_binding_op_impl_t *binding_op_impl = NULL;
     void *configurable = NULL;
+    void *documentable = NULL;
+    void *wsdl_obj = NULL;
+    void *wsdl_el = NULL;
+    void *element_extensible = NULL;
+    void *attr_extensible = NULL;
     
     AXIS2_ENV_CHECK(env, NULL);
     binding_op_impl = (woden_binding_op_impl_t *) create(env);
@@ -592,7 +624,23 @@
             binding_op_impl->nested_configurable, env);
     axis2_hash_set(binding_op_impl->super, "WODEN_CONFIGURABLE", 
             AXIS2_HASH_KEY_STRING, configurable);
+    documentable = WODEN_CONFIGURABLE_GET_BASE_IMPL(configurable, env);
+    wsdl_obj = WODEN_DOCUMENTABLE_GET_BASE_IMPL(documentable, env);
+    wsdl_el = WODEN_WSDL_OBJ_GET_BASE_IMPL(wsdl_obj, env);
+    element_extensible = WODEN_WSDL_ELEMENT_GET_ELEMENT_EXTENSIBLE(wsdl_el, env);
+    attr_extensible = WODEN_WSDL_ELEMENT_GET_ATTR_EXTENSIBLE(wsdl_el, env);
+    axis2_hash_set(binding_op_impl->super, "WODEN_DOCUMENTABLE", 
+            AXIS2_HASH_KEY_STRING, documentable);
+    axis2_hash_set(binding_op_impl->super, "WODEN_WSDL_OBJ", 
+            AXIS2_HASH_KEY_STRING, wsdl_obj);
+    axis2_hash_set(binding_op_impl->super, "WODEN_WSDL_ELEMENT", 
+            AXIS2_HASH_KEY_STRING, wsdl_el);
+    axis2_hash_set(binding_op_impl->super, "WODEN_ELEMENT_EXTENSIBLE", 
+            AXIS2_HASH_KEY_STRING, element_extensible);
+    axis2_hash_set(binding_op_impl->super, "WODEN_ATTR_EXTENSIBLE", 
+            AXIS2_HASH_KEY_STRING, attr_extensible);
  
+
     return &(binding_op_impl->binding_op);
 }
 

Modified: webservices/axis2/trunk/c/woden/src/wsdl20/extensions/soap/soap_module.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/src/wsdl20/extensions/soap/soap_module.c?rev=428297&r1=428296&r2=428297&view=diff
==============================================================================
--- webservices/axis2/trunk/c/woden/src/wsdl20/extensions/soap/soap_module.c (original)
+++ webservices/axis2/trunk/c/woden/src/wsdl20/extensions/soap/soap_module.c Thu Aug  3 03:02:36
2006
@@ -115,7 +115,7 @@
 woden_soap_module_get_documentation_elements(
         void *module,
         axis2_env_t *env);
-
+ 
 axis2_status_t AXIS2_CALL 
 woden_soap_module_set_extension_type(
         void *module,

Modified: webservices/axis2/trunk/c/woden/src/wsdl20/extensions/soap/soap_module_deserializer.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/woden/src/wsdl20/extensions/soap/soap_module_deserializer.c?rev=428297&r1=428296&r2=428297&view=diff
==============================================================================
--- webservices/axis2/trunk/c/woden/src/wsdl20/extensions/soap/soap_module_deserializer.c
(original)
+++ webservices/axis2/trunk/c/woden/src/wsdl20/extensions/soap/soap_module_deserializer.c
Thu Aug  3 03:02:36 2006
@@ -325,14 +325,20 @@
     mod_deser_impl = INTF_TO_IMPL(axis2_hash_get(super, 
                 "WODEN_SOAP_MODULE_DESERIALIZER", AXIS2_HASH_KEY_STRING));
    
-    soap_mod = WODEN_EXT_REGISTRY_QUERY_EXT_ELEMENT_TYPE(ext_reg, env, 
-            parent_type, element_type);
-
+    /*soap_mod = WODEN_EXT_REGISTRY_QUERY_EXT_ELEMENT_TYPE(ext_reg, env, 
+            parent_type, element_type);*/
+    soap_mod = woden_soap_module_create(env);
+    if(!soap_mod)
+    {
+        AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+        return NULL;
+    }
     soap_mod = woden_soap_module_to_ext_element(soap_mod, env);
     WODEN_EXT_ELEMENT_SET_EXT_TYPE(soap_mod, env, element_type);
     soap_mod = woden_soap_module_to_soap_module_element(soap_mod, env);
     WODEN_SOAP_MODULE_ELEMENT_SET_PARENT_ELEMENT(soap_mod, env, parent);
 
+    el = AXIOM_NODE_GET_DATA_ELEMENT(el_node, env);
     ref = AXIOM_ELEMENT_GET_ATTRIBUTE_VALUE_BY_NAME(el, env, 
             WODEN_ATTR_REF); 
     if(NULL != ref)
@@ -351,10 +357,8 @@
     soap_mod = woden_soap_module_to_ext_element(soap_mod, env);
     WODEN_EXT_ELEMENT_SET_REQUIRED(soap_mod, env, required);
 
-    el = AXIOM_NODE_GET_DATA_ELEMENT(el_node, env);
     temp_el = axiom_util_get_first_child_element(el, env, el_node, 
             &temp_el_node);
-
     while (NULL != temp_el && NULL != temp_el_node)
     {
         axis2_qname_t *q_elem_documentation = NULL;
@@ -380,7 +384,7 @@
         temp_el = axiom_util_get_next_sibling_element(temp_el, env, 
                 temp_el_node, &temp_el_node); 
     }
-    
+    soap_mod = woden_soap_module_to_ext_element(soap_mod, env);
     return soap_mod;
 }
 



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


Mime
View raw message