Author: deepal
Date: Thu Oct 26 05:09:16 2006
New Revision: 467977

URL: http://svn.apache.org/viewvc?view=rev&rev=467977
Log:
- improve wsdl generation to generate nillable wsdl
- and changed the code to handle nil

Modified:
    
webservices/axis2/branches/java/1_1/modules/adb/src/org/apache/axis2/rpc/client/RPCServiceClient.java
    
webservices/axis2/branches/java/1_1/modules/adb/src/org/apache/axis2/rpc/receivers/RPCUtil.java
    
webservices/axis2/branches/java/1_1/modules/integration/test/org/apache/axis2/rpc/RPCCallTest.java
    
webservices/axis2/branches/java/1_1/modules/java2wsdl/src/org/apache/ws/java2wsdl/SchemaGenerator.java

Modified: 
webservices/axis2/branches/java/1_1/modules/adb/src/org/apache/axis2/rpc/client/RPCServiceClient.java
URL: 
http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/modules/adb/src/org/apache/axis2/rpc/client/RPCServiceClient.java?view=diff&rev=467977&r1=467976&r2=467977
==============================================================================
--- 
webservices/axis2/branches/java/1_1/modules/adb/src/org/apache/axis2/rpc/client/RPCServiceClient.java
 (original)
+++ 
webservices/axis2/branches/java/1_1/modules/adb/src/org/apache/axis2/rpc/client/RPCServiceClient.java
 Thu Oct 26 05:09:16 2006
@@ -86,7 +86,7 @@
      * @throws AxisFault
      */
 
-    public Object[]  invokeBlocking(QName opName, Object [] args, Object [] 
returnTypes) throws AxisFault {
+    public Object[]  invokeBlocking(QName opName, Object [] args, Class [] 
returnTypes) throws AxisFault {
         OMElement omElement = BeanUtil.getOMElement(opName, args, null, false, 
null);
         OMElement response;
         if (notNullService) {

Modified: 
webservices/axis2/branches/java/1_1/modules/adb/src/org/apache/axis2/rpc/receivers/RPCUtil.java
URL: 
http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/modules/adb/src/org/apache/axis2/rpc/receivers/RPCUtil.java?view=diff&rev=467977&r1=467976&r2=467977
==============================================================================
--- 
webservices/axis2/branches/java/1_1/modules/adb/src/org/apache/axis2/rpc/receivers/RPCUtil.java
 (original)
+++ 
webservices/axis2/branches/java/1_1/modules/adb/src/org/apache/axis2/rpc/receivers/RPCUtil.java
 Thu Oct 26 05:09:16 2006
@@ -141,9 +141,14 @@
                                        MessageContext outMessage
     ) throws Exception {
         if (resObject == null) {
-            QName resName = new QName(service.getSchematargetNamespace(),
-                    RETURN_WRAPPER,
-                    service.getSchematargetNamespacePrefix());
+            QName resName;
+            if (service.isElementFormDefault()) {
+                resName = new QName(service.getSchematargetNamespace(),
+                        RETURN_WRAPPER,
+                        service.getSchematargetNamespacePrefix());
+            } else {
+                resName = new QName(RETURN_WRAPPER);
+            }
             XMLStreamReader xr = new NullXMLStreamReader(resName);
             StreamWrapper parser = new StreamWrapper(xr);
             StAXOMBuilder stAXOMBuilder =

Modified: 
webservices/axis2/branches/java/1_1/modules/integration/test/org/apache/axis2/rpc/RPCCallTest.java
URL: 
http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/modules/integration/test/org/apache/axis2/rpc/RPCCallTest.java?view=diff&rev=467977&r1=467976&r2=467977
==============================================================================
--- 
webservices/axis2/branches/java/1_1/modules/integration/test/org/apache/axis2/rpc/RPCCallTest.java
 (original)
+++ 
webservices/axis2/branches/java/1_1/modules/integration/test/org/apache/axis2/rpc/RPCCallTest.java
 Thu Oct 26 05:09:16 2006
@@ -475,7 +475,7 @@
         resobj.add(Company.class);
         resobj.add(Company.class);
         resobj.add(Company.class);
-        Object [] value = sender.invokeBlocking(operationName, req.toArray(), 
resobj.toArray());
+        Object [] value = sender.invokeBlocking(operationName, req.toArray(), 
(Class[])resobj.toArray(new Class[resobj.size()]));
         assertEquals(4, value.length);
         assertEquals(((Company) value[0]).getName(), "MyCompany");
     }
@@ -548,7 +548,7 @@
         ArrayList ret = new ArrayList();
         ret.add(MyBean.class);
 
-        Object [] response = sender.invokeBlocking(operationName, 
args.toArray(), ret.toArray());
+        Object [] response = sender.invokeBlocking(operationName, 
args.toArray(), (Class[])ret.toArray(new Class[ret.size()]));
         MyBean resBean = (MyBean) response[0];
         assertNotNull(resBean);
         assertEquals(resBean.getAge(), 100);
@@ -572,7 +572,7 @@
         ArrayList ret = new ArrayList();
         ret.add(Integer.class);
 
-        Object [] response = sender.invokeBlocking(operationName, 
args.toArray(), ret.toArray());
+        Object [] response = sender.invokeBlocking(operationName, 
args.toArray(), (Class[])ret.toArray(new Class[ret.size()]));
         assertEquals(((Integer) response[0]).intValue(), 100);
     }
 
@@ -618,7 +618,7 @@
         ArrayList ret = new ArrayList();
         ret.add(Boolean.class);
         Object [] objs = sender.invokeBlocking(operationName, args.toArray(),
-                ret.toArray());
+                (Class[])ret.toArray(new Class[ret.size()]));
         assertNotNull(objs);
         assertEquals(Boolean.TRUE, Boolean.valueOf(objs[0].toString()));
     }
@@ -648,7 +648,7 @@
         ArrayList ret = new ArrayList();
         ret.add(Integer.class);
         Object [] objs = sender.invokeBlocking(operationName, args.toArray(),
-                ret.toArray());
+                (Class[])ret.toArray(new Class[ret.size()]));
         assertNotNull(objs);
         assertEquals(19, Integer.parseInt(objs[0].toString()));
     }

Modified: 
webservices/axis2/branches/java/1_1/modules/java2wsdl/src/org/apache/ws/java2wsdl/SchemaGenerator.java
URL: 
http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/modules/java2wsdl/src/org/apache/ws/java2wsdl/SchemaGenerator.java?view=diff&rev=467977&r1=467976&r2=467977
==============================================================================
--- 
webservices/axis2/branches/java/1_1/modules/java2wsdl/src/org/apache/ws/java2wsdl/SchemaGenerator.java
 (original)
+++ 
webservices/axis2/branches/java/1_1/modules/java2wsdl/src/org/apache/ws/java2wsdl/SchemaGenerator.java
 Thu Oct 26 05:09:16 2006
@@ -297,6 +297,9 @@
                         elt1.setMaxOccurs(Long.MAX_VALUE);
                         elt1.setMinOccurs(1);
                     }
+                    if (String.class.getName().equals(propertyName)) {
+                        elt1.setNillable(true);
+                    }
                 } else {
                     if (isArryType) {
                         
generateSchema(property.getType().getArrayComponentType());
@@ -311,6 +314,7 @@
                         elt1.setMaxOccurs(Long.MAX_VALUE);
                         elt1.setMinOccurs(1);
                     }
+                    elt1.setNillable(true);
 
                     if (!((NamespaceMap) 
xmlSchema.getNamespaceContext()).values().
                             
contains(typeTable.getComplexSchemaType(propertyName).getNamespaceURI())) {
@@ -373,8 +377,8 @@
         if (isArray) {
             elt1.setMaxOccurs(Long.MAX_VALUE);
             elt1.setMinOccurs(1);
-            elt1.setNillable(true);
         }
+        elt1.setNillable(true);
     }
 
     private XmlSchemaComplexType createSchemaTypeForMethodPart(String 
localPartName) {



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to