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 am...@apache.org on 2008/04/16 09:05:00 UTC

svn commit: r648561 - in /webservices/axis2/trunk/java/modules/adb-codegen: src/org/apache/axis2/schema/SchemaCompiler.java test-resources/testsuite/element_references.xsd test/org/apache/axis2/schema/references/ElementReferenceTest.java

Author: amilas
Date: Wed Apr 16 00:04:59 2008
New Revision: 648561

URL: http://svn.apache.org/viewvc?rev=648561&view=rev
Log:
fixed an issue with supporting simple types for referenced elements

Modified:
    webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java
    webservices/axis2/trunk/java/modules/adb-codegen/test-resources/testsuite/element_references.xsd
    webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/references/ElementReferenceTest.java

Modified: webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java?rev=648561&r1=648560&r2=648561&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java (original)
+++ webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java Wed Apr 16 00:04:59 2008
@@ -704,7 +704,8 @@
             }
 
             // here what we want is to set the schema type name for the element
-            if (referencedElement.getSchemaTypeName() != null){
+            if ((referencedElement.getSchemaType() != null)
+                    && (referencedElement.getSchemaType().getQName() != null)){
                 // i.e this element refers to an complex type name
                 if (!this.processedElementRefMap.containsKey(referencedElement.getQName())) {
                     if (this.baseSchemaTypeMap.containsKey(referencedElement.getSchemaTypeName())) {

Modified: webservices/axis2/trunk/java/modules/adb-codegen/test-resources/testsuite/element_references.xsd
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/adb-codegen/test-resources/testsuite/element_references.xsd?rev=648561&r1=648560&r2=648561&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/adb-codegen/test-resources/testsuite/element_references.xsd (original)
+++ webservices/axis2/trunk/java/modules/adb-codegen/test-resources/testsuite/element_references.xsd Wed Apr 16 00:04:59 2008
@@ -64,4 +64,19 @@
             </sequence>
         </complexType>
     </element>
+
+    <element name="authInfo" >
+		<simpleType>
+			<restriction base="string"/>
+		</simpleType>
+	</element>
+
+    <complexType name="discard_transferToken">
+		<sequence>
+			<element ref="tns:authInfo" minOccurs="0"/>
+            <element name="param1" type="string"/>
+		</sequence>
+	</complexType>
+
+    <element name="TestSimpleReference" type="tns:discard_transferToken"/>
 </schema>

Modified: webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/references/ElementReferenceTest.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/references/ElementReferenceTest.java?rev=648561&r1=648560&r2=648561&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/references/ElementReferenceTest.java (original)
+++ webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/references/ElementReferenceTest.java Wed Apr 16 00:04:59 2008
@@ -178,5 +178,34 @@
         }
     }
 
+    public void testSimpleReference() {
+        TestSimpleReference testSimpleReference = new TestSimpleReference();
+        Discard_transferToken discard_transferToken = new Discard_transferToken();
+        AuthInfo_type1 authInfo_type1 = new AuthInfo_type1();
+        authInfo_type1.setAuthInfo_type1("Simple param");
+        discard_transferToken.setAuthInfo(authInfo_type1);
+        discard_transferToken.setParam1("New parm");
+        testSimpleReference.setTestSimpleReference(discard_transferToken);
+
+        try {
+            OMElement omElement = testSimpleReference.getOMElement(TestSimpleReference.MY_QNAME,
+                    OMAbstractFactory.getOMFactory());
+            String omElmentString = omElement.toStringWithConsume();
+            System.out.println("OM element ==>" + omElmentString);
+            XMLStreamReader xmlReader = StAXUtils.createXMLStreamReader(new ByteArrayInputStream(omElmentString.getBytes()));
+            TestSimpleReference result = TestSimpleReference.Factory.parse(xmlReader);
+            assertEquals(result.getTestSimpleReference().getParam1(),"New parm");
+            assertEquals(result.getTestSimpleReference().getAuthInfo().getAuthInfo_type1(),"Simple param");
+        } catch (ADBException e) {
+            fail();
+        } catch (XMLStreamException e) {
+            fail();
+        } catch (Exception e) {
+            fail();
+        }
+
+
+    }
+
 
 }



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