[prev in list] [next in list] [prev in thread] [next in thread]
List: axis-cvs
Subject: svn commit: r799446 - in /webservices/axis2/trunk/java/modules/kernel:
From: veithen () apache ! org
Date: 2009-07-30 21:24:01
Message-ID: 20090730212402.13DAB238886D () eris ! apache ! org
[Download RAW message or body]
Author: veithen
Date: Thu Jul 30 21:23:55 2009
New Revision: 799446
URL: http://svn.apache.org/viewvc?rev=799446&view=rev
Log:
AXIS2-4443: Applied patch submitted by Detelin Yordanov to fix the mapping between \
Java class names and schema types for inner classes. Also changed the test case for \
extra classes to make it orthogonal to the inner class issue.
Added:
webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/description/java2wsdl/ExtraClass.java \
(with props) Modified:
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java
webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/description/java2wsdl/DefaultSchemaGeneratorTest.java
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=799446&r1=799445&r2=799446&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 \
Thu Jul 30 21:23:55 2009 @@ -442,7 +442,7 @@
if (AxisFault.class.getName().equals(extype.getName())) {
continue;
}
- String partQname = extype.getSimpleName();
+ String partQname = getSimpleClassName(extype);
methodSchemaType = createSchemaTypeForFault(partQname);
QName elementName =
new QName(this.schemaTargetNameSpace, partQname, \
this.schema_namespace_prefix); @@ -459,7 +459,7 @@
resolveSchemaNamespace(Exception.class.getPackage().getName());
addImport(getXmlSchema(schemaTargetNameSpace), schemaTypeName);
} else {
- generateSchemaForType(sequence, extype, extype.getSimpleName());
+ generateSchemaForType(sequence, extype, \
getSimpleClassName(extype)); methodSchemaType.setParticle(sequence);
}
@@ -469,7 +469,7 @@
continue;
}
AxisMessage faultMessage = new AxisMessage();
- faultMessage.setName(extype.getSimpleName());
+ faultMessage.setName(getSimpleClassName(extype));
faultMessage.setElementQName(typeTable.getQNamefortheType(partQname));
axisOperation.setFaultMessages(faultMessage);
}
@@ -486,7 +486,7 @@
String name = getClassName(javaType);
QName schemaTypeName = typeTable.getComplexSchemaType(name);
if (schemaTypeName == null) {
- String simpleName = javaType.getSimpleName();
+ String simpleName = getSimpleClassName(javaType);
String packageName = getQualifiedName(javaType.getPackage());
String targetNameSpace = resolveSchemaNamespace(packageName);
@@ -514,7 +514,7 @@
&& !(getQualifiedName(sup.getPackage()).indexOf("java.util") > \
0)) {
String superClassName = sup.getName();
- String superclassname = sup.getSimpleName();
+ String superclassname = getSimpleClassName(sup);
String tgtNamespace;
String tgtNamespacepfx;
QName qName = typeTable.getSimpleSchemaTypeName(superClassName);
@@ -636,7 +636,7 @@
simpleTypeName += "ArrayOf";
simpleType = simpleType.getComponentType();
}
- simpleTypeName += simpleType.getSimpleName();
+ simpleTypeName += getSimpleClassName(simpleType);
if (xmlSchema.getTypeByName(simpleTypeName) == null) {
XmlSchemaComplexType xmlSchemaComplexType = new \
XmlSchemaComplexType(xmlSchema); @@ -952,7 +952,7 @@
simpleTypeName += "ArrayOf";
simpleType = simpleType.getComponentType();
}
- simpleTypeName += simpleType.getSimpleName();
+ simpleTypeName += getSimpleClassName(simpleType);
return processParameterArrayTypes(sequence, type, partName, \
simpleTypeName);
@@ -1454,6 +1454,16 @@
}
return name;
}
+
+ protected String getSimpleClassName(Class type) {
+ String simpleClassName = type.getName();
+ int idx = simpleClassName.lastIndexOf('.');
+ if (idx != -1 && idx < (simpleClassName.length() - 1)) {
+ simpleClassName = simpleClassName.substring(idx + 1);
+ }
+
+ return simpleClassName.replace('$', '_');
+ }
protected String getQualifiedName(Package packagez) {
if (packagez != null) {
Modified: webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/description/java2wsdl/DefaultSchemaGeneratorTest.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/test/org \
/apache/axis2/description/java2wsdl/DefaultSchemaGeneratorTest.java?rev=799446&r1=799445&r2=799446&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/description/java2wsdl/DefaultSchemaGeneratorTest.java \
(original)
+++ webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/description/java2wsdl/DefaultSchemaGeneratorTest.java \
Thu Jul 30 21:23:55 2009 @@ -36,10 +36,6 @@
}
- public static class ExtraClass {
-
- }
-
public void testGeneratesExtraClass() throws Exception {
AxisService axisService = new AxisService();
Added: webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/description/java2wsdl/ExtraClass.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/description/java2wsdl/ExtraClass.java?rev=799446&view=auto
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/description/java2wsdl/ExtraClass.java \
(added)
+++ webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/description/java2wsdl/ExtraClass.java \
Thu Jul 30 21:23:55 2009 @@ -0,0 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.axis2.description.java2wsdl;
+
+public class ExtraClass {
+
+}
\ No newline at end of file
Propchange: webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/description/java2wsdl/ExtraClass.java
------------------------------------------------------------------------------
svn:eol-style = native
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic