[ http://issues.apache.org/jira/browse/AXIS2-674?page=all ]
Deepal Jayasinghe reassigned AXIS2-674:
---------------------------------------
Assign To: Deepal Jayasinghe
> Java2WSDLUtils fails to generate WSDL where a class's package could not be
> found
> --------------------------------------------------------------------------------
>
> Key: AXIS2-674
> URL: http://issues.apache.org/jira/browse/AXIS2-674
> Project: Apache Axis 2.0 (Axis2)
> Type: Bug
> Components: deployment
> Versions: 1.0
> Reporter: Steve Barham
> Assignee: Deepal Jayasinghe
> Priority: Critical
>
> The Java2WSDL class defines the following method to find the namespace for a
> class:
> public static StringBuffer namespaceFromClassName(String className ,
> ClassLoader classLoader) throws Exception
> {
> return namespaceFromPackageName(Class.forName(className, true,
> classLoader).getPackage().getName());
> }
> Unfortunately, Class.getPackage() may return null when:
> 1. the package for a class does not exist (ie. a top level class)
> 2. where the package has not been loaded.
> Suggestion:
> 1. Document that classes must reside in a package, or define a default
> namespace to be assigned to top level classes
> 2. Add an alternate mechanism of determining the package of a class (see
> below)
> public static StringBuffer namespaceFromClassName(String className ,
> ClassLoader classLoader) throws Exception
> {
> Class clazz = Class.forName(className, true, classLoader);
> Package pkg = clazz.getPackage();
> String name;
> if (pkg != null)
> name = pkg.getName();
> else
> name = packageNameFromClass(clazz.getName());
> return namespaceFromPackageName(name);
> }
> protected static String packageNameFromClass(String name)
> {
> String ret = new String();
> int lastDot = name.lastIndexOf ('.');
> if (lastDot != -1)
> ret = name.substring(lastDot + 1);
>
> return ret;
> }
> Rgds
> steve
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira