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 2008/03/10 08:40:14 UTC
svn commit: r635458 - in /webservices/axis2/trunk/java/modules:
java2wsdl/src/org/apache/ws/java2wsdl/Java2WSDLBuilder.java
kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java
Author: deepal
Date: Mon Mar 10 00:40:13 2008
New Revision: 635458
URL: http://svn.apache.org/viewvc?rev=635458&view=rev
Log:
fixing some of the issues with custom schema feeding and Exception generation
Modified:
webservices/axis2/trunk/java/modules/java2wsdl/src/org/apache/ws/java2wsdl/Java2WSDLBuilder.java
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java
Modified: webservices/axis2/trunk/java/modules/java2wsdl/src/org/apache/ws/java2wsdl/Java2WSDLBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/java2wsdl/src/org/apache/ws/java2wsdl/Java2WSDLBuilder.java?rev=635458&r1=635457&r2=635458&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/java2wsdl/src/org/apache/ws/java2wsdl/Java2WSDLBuilder.java (original)
+++ webservices/axis2/trunk/java/modules/java2wsdl/src/org/apache/ws/java2wsdl/Java2WSDLBuilder.java Mon Mar 10 00:40:13 2008
@@ -213,7 +213,9 @@
schemaGenerator.setExtraClasses(getExtraClasses());
schemaGenerator.setNsGen(resolveNSGen());
schemaGenerator.setPkg2nsmap(getPkg2nsMap());
- if (getPkg2nsMap() != null
+ schemaGenerator.setMappingFileLocation(getMappingFileLocation());
+ schemaGenerator.setCustomSchemaLocation(getCustomSchemaLocation());
+ if (getPkg2nsMap() != null
&& !getPkg2nsMap().isEmpty()
&& (getPkg2nsMap().containsKey(ALL) || getPkg2nsMap()
.containsKey(ALL.toUpperCase()))) {
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java?rev=635458&r1=635457&r2=635458&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java Mon Mar 10 00:40:13 2008
@@ -392,28 +392,32 @@
* - No matter what it will generate Schema element for java.lang.Exception so that for other
* exception which extend java.lang.Excetion can use as the base class type
*/
- protected void processException(JMethod jMethod,
- AxisOperation axisOperation) throws Exception {
+ protected void processException(JMethod jMethod,
+ AxisOperation axisOperation) throws Exception {
XmlSchemaComplexType methodSchemaType;
XmlSchemaSequence sequence;
if (jMethod.getExceptionTypes().length > 0) {
if (!generateBaseException) {
- sequence = new XmlSchemaSequence();
- XmlSchema xmlSchema = getXmlSchema(schemaTargetNameSpace);
- QName elementName = new QName(schemaTargetNameSpace,
- "Exception",
- schema_namespace_prefix);
- XmlSchemaComplexType complexType = new XmlSchemaComplexType(xmlSchema);
- complexType.setName("Exception");
- xmlSchema.getItems().add(complexType);
- xmlSchema.getElements().add(elementName, complexType);
- typeTable.addComplexSchema(Exception.class.getName(), elementName);
- QName schemaTypeName = TypeTable.ANY_TYPE;
- addContentToMethodSchemaType(sequence,
- schemaTypeName,
- "Exception",
- false);
- complexType.setParticle(sequence);
+ if (typeTable.getComplexSchemaType(Exception.class.getName()) !=null) {
+
+ } else {
+ sequence = new XmlSchemaSequence();
+ XmlSchema xmlSchema = getXmlSchema(schemaTargetNameSpace);
+ QName elementName = new QName(schemaTargetNameSpace,
+ "Exception",
+ schema_namespace_prefix);
+ XmlSchemaComplexType complexType = new XmlSchemaComplexType(xmlSchema);
+ complexType.setName("Exception");
+ xmlSchema.getItems().add(complexType);
+ xmlSchema.getElements().add(elementName, complexType);
+ typeTable.addComplexSchema(Exception.class.getName(), elementName);
+ QName schemaTypeName = TypeTable.ANY_TYPE;
+ addContentToMethodSchemaType(sequence,
+ schemaTypeName,
+ "Exception",
+ false);
+ complexType.setParticle(sequence);
+ }
generateBaseException = true;
}
JClass[] extypes = jMethod.getExceptionTypes();
@@ -428,13 +432,16 @@
new QName(this.schemaTargetNameSpace, partQname, this.schema_namespace_prefix);
sequence = new XmlSchemaSequence();
if (Exception.class.getName().equals(extype.getQualifiedName())) {
+ QName schemaTypeName = typeTable.getComplexSchemaType(Exception.class.getName());
addContentToMethodSchemaType(sequence,
- typeTable.getComplexSchemaType(Exception.class.getName()),
+ schemaTypeName,
partQname,
false);
methodSchemaType.setParticle(sequence);
typeTable.addComplexSchema(Exception.class.getPackage().getName(),
methodSchemaType.getQName());
+ String schemaNamespace = resolveSchemaNamespace(Exception.class.getPackage().getName());
+ addImport(getXmlSchema(schemaTargetNameSpace),schemaTypeName );
} else {
generateSchemaForType(sequence, extype, extype.getSimpleName());
methodSchemaType.setParticle(sequence);
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org