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

svn commit: r375516 - in /webservices/axis2/trunk/java/modules: adb/src/org/apache/axis2/databinding/utils/BeanUtil.java codegen/src/org/apache/axis2/rpc/client/RPCServiceClient.java codegen/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java

Author: deepal
Date: Mon Feb  6 22:39:40 2006
New Revision: 375516

URL: http://svn.apache.org/viewcvs?rev=375516&view=rev
Log:
-fixing name space problem in bean util

Modified:
    webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java
    webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/client/RPCServiceClient.java
    webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java

Modified: webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java?rev=375516&r1=375515&r2=375516&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java (original)
+++ webservices/axis2/trunk/java/modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java Mon Feb  6 22:39:40 2006
@@ -60,20 +60,23 @@
                 }
                 if (SimpleTypeMapper.isSimpleType(ptype)) {
                     Object value = propDesc.getReadMethod().invoke(beanObject, null);
-                    object.add(propDesc.getName());
+                    object.add(new QName(beanName.getNamespaceURI(),
+                            propDesc.getName(), beanName.getPrefix()));
                     object.add(value.toString());
                 } else if (ptype.isArray()) {
                     Object value [] = (Object[]) propDesc.getReadMethod().invoke(beanObject, null);
                     if (SimpleTypeMapper.isSimpleType(ptype.getComponentType())) {
                         for (int j = 0; j < value.length; j++) {
                             Object o = value[j];
-                            object.add(propDesc.getName());
+                            object.add(new QName(beanName.getNamespaceURI(),
+                                    propDesc.getName(), beanName.getPrefix()));
                             object.add(o.toString());
                         }
                     } else {
-                         for (int j = 0; j < value.length; j++) {
+                        for (int j = 0; j < value.length; j++) {
                             Object o = value[j];
-                            object.add(new QName(propDesc.getName()));
+                            object.add(new QName(beanName.getNamespaceURI(),
+                                    propDesc.getName(), beanName.getPrefix()));
                             object.add(o);
                         }
                     }
@@ -88,10 +91,12 @@
                         for (int j = 0; j < objList.size(); j++) {
                             Object o = objList.get(j);
                             if (SimpleTypeMapper.isSimpleType(o)) {
-                                object.add(propDesc.getName());
-                                object.add(o);
+                                object.add(new QName(beanName.getNamespaceURI(),
+                                        propDesc.getName(), beanName.getPrefix()));
+                                object.add(o.toString());
                             } else {
-                                object.add(new QName(propDesc.getName()));
+                                object.add(new QName(beanName.getNamespaceURI(),
+                                        propDesc.getName(), beanName.getPrefix()));
                                 object.add(o);
                             }
                         }
@@ -339,10 +344,17 @@
         return retObjs;
     }
 
-    public static OMElement getOMElement(QName opName, Object [] args, String partName) {
+    public static OMElement getOMElement(QName opName, Object [] args, String partName,
+                                         String nameSpace,
+                                         String nameSpaceprefix) {
         ArrayList objects;
         objects = new ArrayList();
         int argCount = 0;
+        QName elemntName = null;
+        if (partName != null) {
+            elemntName = new QName(nameSpace, partName, nameSpaceprefix);
+        }
+
         for (int i = 0; i < args.length; i++) {
             Object arg = args[i];
             if (arg == null) {
@@ -352,26 +364,26 @@
             //way to do that , to solve that problem we need to have RPCRequestParameter
             //note that The value of request parameter can either be simple type or JavaBean
             if (SimpleTypeMapper.isSimpleType(arg)) {
-                if (partName == null) {
+                if (elemntName == null) {
                     objects.add("arg" + argCount);
                 } else {
-                    objects.add(partName);
+                    objects.add(elemntName);
                 }
                 objects.add(arg.toString());
             } else {
-                if (partName == null) {
+                if (elemntName == null) {
                     objects.add(new QName("arg" + argCount));
                 } else {
-                    objects.add(new QName(partName));
+                    objects.add(elemntName);
                 }
                 if (arg instanceof OMElement) {
                     OMFactory fac = OMAbstractFactory.getOMFactory();
                     OMElement wrappingElement;
-                    if (partName == null) {
+                    if (elemntName == null) {
                         wrappingElement = fac.createOMElement("arg" + argCount, null);
                         wrappingElement.addChild((OMElement) arg);
                     } else {
-                        wrappingElement = fac.createOMElement(partName, null);
+                        wrappingElement = fac.createOMElement(partName, nameSpace, nameSpaceprefix);
                         wrappingElement.addChild((OMElement) arg);
                     }
                     objects.add(wrappingElement);

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=375516&r1=375515&r2=375516&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 Mon Feb  6 22:39:40 2006
@@ -56,7 +56,7 @@
      * @return Response OMElement
      */
     public OMElement invokeBlocking(QName opName, Object [] args) throws AxisFault {
-        OMElement omElement = BeanUtil.getOMElement(opName, args,null);
+        OMElement omElement = BeanUtil.getOMElement(opName, args,null, null, null);
         return super.sendReceive(omElement);
     }
 
@@ -77,7 +77,7 @@
      */
 
     public Object[]  invokeBlocking(QName opName, Object [] args, Object [] returnTypes) throws AxisFault {
-        OMElement omElement = BeanUtil.getOMElement(opName, args,null);
+        OMElement omElement = BeanUtil.getOMElement(opName, args,null, null, null);
         OMElement response = super.sendReceive(omElement);
         return BeanUtil.deserialize(response, returnTypes);
     }
@@ -96,7 +96,7 @@
                                   Object [] args,
                                   Callback callback)
             throws AxisFault {
-        OMElement omElement = BeanUtil.getOMElement(opName, args,null);
+        OMElement omElement = BeanUtil.getOMElement(opName, args,null, null, null);
         //call the underline implementation
         super.sendReceiveNonblocking(omElement, callback);
     }

Modified: webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java?rev=375516&r1=375515&r2=375516&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java (original)
+++ webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java Mon Feb  6 22:39:40 2006
@@ -131,7 +131,7 @@
     }
 
     private OMElement getResponseElement(QName resname, Object [] objs) {
-        return BeanUtil.getOMElement(resname, objs, RETURN_WRAPPER);
+        return BeanUtil.getOMElement(resname, objs, RETURN_WRAPPER, null, null);
     }
 
     private void processResponse(SOAPFactory fac, Object resObject,
@@ -145,7 +145,7 @@
             } else if (SimpleTypeMapper.isSimpleType(resObject)) {
                 bodyContent = fac.createOMElement(
                         method.getName() + "Response", ns);
-                OMElement child = fac.createOMElement(RETURN_WRAPPER, null);
+                OMElement child = fac.createOMElement(RETURN_WRAPPER, ns);
                 child.addChild(fac.createText(child, SimpleTypeMapper.getStringValue(resObject)));
                 bodyContent.addChild(child);
             } else {
@@ -153,7 +153,7 @@
                         method.getName() + "Response", ns);
                 // Java Beans
                 XMLStreamReader xr = BeanUtil.getPullParser(resObject,
-                        new QName(RETURN_WRAPPER));
+                        new QName(ns.getName(),RETURN_WRAPPER,ns.getPrefix()));
                 StAXOMBuilder stAXOMBuilder =
                         OMXMLBuilderFactory.createStAXOMBuilder(
                                 OMAbstractFactory.getOMFactory(), xr);