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 2007/06/19 23:02:16 UTC
svn commit: r548854 - in /webservices/axis2/trunk/java/modules/adb-codegen:
src/org/apache/axis2/schema/ src/org/apache/axis2/schema/template/
test-resources/testsuite/ test/org/apache/axis2/schema/innerparticles/
Author: amilas
Date: Tue Jun 19 14:02:15 2007
New Revision: 548854
URL: http://svn.apache.org/viewvc?view=rev&rev=548854
Log:
fixed the issue Axis2-2814
Modified:
webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java
webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl
webservices/axis2/trunk/java/modules/adb-codegen/test-resources/testsuite/innerParticles.xsd
webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/innerparticles/InnerParticlesTest.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?view=diff&rev=548854&r1=548853&r2=548854
==============================================================================
--- 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 Tue Jun 19 14:02:15 2007
@@ -1136,7 +1136,7 @@
//process the particle of this node
if (extension.getParticle() != null) {
- processParticle(null,extension.getParticle(), metaInfHolder, parentSchema);
+ processParticle(extension.getBaseTypeName(),extension.getParticle(), metaInfHolder, parentSchema);
}
// process attributes
Modified: webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl?view=diff&rev=548854&r1=548853&r2=548854
==============================================================================
--- webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl (original)
+++ webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl Tue Jun 19 14:02:15 2007
@@ -1872,6 +1872,11 @@
java.util.ArrayList elementList = new java.util.ArrayList();
java.util.ArrayList attribList = new java.util.ArrayList();
+ <xsl:if test="$extension">
+ attribList.add(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema-instance","type"));
+ attribList.add(new javax.xml.namespace.QName("<xsl:value-of select="$nsuri"/>","<xsl:value-of select="$originalName"/>"));
+ </xsl:if>
+
<xsl:for-each select="property[not(@attribute)]">
<xsl:variable name="propertyName"><xsl:value-of select="@name"/></xsl:variable>
<xsl:variable name="varName">local<xsl:value-of select="@javaname"/></xsl:variable>
Modified: webservices/axis2/trunk/java/modules/adb-codegen/test-resources/testsuite/innerParticles.xsd
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/adb-codegen/test-resources/testsuite/innerParticles.xsd?view=diff&rev=548854&r1=548853&r2=548854
==============================================================================
--- webservices/axis2/trunk/java/modules/adb-codegen/test-resources/testsuite/innerParticles.xsd (original)
+++ webservices/axis2/trunk/java/modules/adb-codegen/test-resources/testsuite/innerParticles.xsd Tue Jun 19 14:02:15 2007
@@ -52,7 +52,6 @@
</xsd:choice>
</xsd:complexType>
</xsd:element>
-
<xsd:element name="TestInnerParticle5">
<xsd:complexType>
<xsd:sequence>
@@ -69,4 +68,24 @@
</xsd:sequence>
</xsd:complexType>
</xsd:element>
+
+ <xsd:element name="TestInnterParticleExtension" type="test1:TestInnterParticleExtensionParentComplexType"/>
+
+ <xsd:complexType name="TestInnterParticleExtensionChildComplexType">
+ <xsd:complexContent>
+ <xsd:extension base="test1:TestInnterParticleExtensionParentComplexType">
+ <xsd:sequence>
+ <xsd:choice>
+ <xsd:element name="Param1" type="xsd:string"/>
+ <xsd:element name="Param2" type="xsd:string"/>
+ </xsd:choice>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="TestInnterParticleExtensionParentComplexType">
+ <xsd:sequence>
+ </xsd:sequence>
+ </xsd:complexType>
</xsd:schema>
Modified: webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/innerparticles/InnerParticlesTest.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/innerparticles/InnerParticlesTest.java?view=diff&rev=548854&r1=548853&r2=548854
==============================================================================
--- webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/innerparticles/InnerParticlesTest.java (original)
+++ webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/innerparticles/InnerParticlesTest.java Tue Jun 19 14:02:15 2007
@@ -19,6 +19,7 @@
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMAbstractFactory;
import org.apache.axiom.om.util.StAXUtils;
+import org.apache.axis2.databinding.ADBException;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamReader;
@@ -28,6 +29,7 @@
import java.io.ByteArrayInputStream;
+
public class InnerParticlesTest extends TestCase {
public void testInnerParticle1() {
@@ -267,6 +269,40 @@
fail();
}
+ }
+
+ public void testIntterParticalExtension(){
+ TestInnterParticleExtension testInnterParticleExtension = new TestInnterParticleExtension();
+
+ TestInnterParticleExtensionChildComplexType testInnterParticleExtensionChildComplexType =
+ new TestInnterParticleExtensionChildComplexType();
+ testInnterParticleExtension.setTestInnterParticleExtension(testInnterParticleExtensionChildComplexType);
+
+ TestInnterParticleExtensionParentComplexTypeChoice_type6 testInnterParticleExtensionParentComplexTypeChoice_type0 =
+ new TestInnterParticleExtensionParentComplexTypeChoice_type6();
+ testInnterParticleExtensionChildComplexType.setTestInnterParticleExtensionParentComplexTypeChoice_type6(testInnterParticleExtensionParentComplexTypeChoice_type0);
+
+ testInnterParticleExtensionParentComplexTypeChoice_type0.setParam1("param1");
+ testInnterParticleExtensionParentComplexTypeChoice_type0.setParam2("param2");
+
+ try {
+ OMElement omElement = testInnterParticleExtension.getOMElement(TestInnterParticleExtension.MY_QNAME,
+ OMAbstractFactory.getOMFactory());
+ String omElementString = omElement.toStringWithConsume();
+ System.out.println("OM String ==> " + omElementString);
+ XMLStreamReader xmlReader = StAXUtils.createXMLStreamReader(new ByteArrayInputStream(omElementString.getBytes()));
+ TestInnterParticleExtension result = TestInnterParticleExtension.Factory.parse(xmlReader);
+ assertTrue(result.getTestInnterParticleExtension() instanceof TestInnterParticleExtensionChildComplexType);
+ TestInnterParticleExtensionChildComplexType resultComplexType =
+ (TestInnterParticleExtensionChildComplexType) result.getTestInnterParticleExtension();
+ assertEquals(resultComplexType.getTestInnterParticleExtensionParentComplexTypeChoice_type6().getParam2(),"param2");
+ } 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