axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From axis-...@ws.apache.org
Subject [jira] Created: (AXIS-1598) Generated Java artifacts name for Schema Anonymous type
Date Mon, 11 Oct 2004 06:39:51 GMT
Message:

  A new issue has been created in JIRA.

---------------------------------------------------------------------
View the issue:
  http://issues.apache.org/jira/browse/AXIS-1598

Here is an overview of the issue:
---------------------------------------------------------------------
        Key: AXIS-1598
    Summary: Generated Java artifacts name for Schema Anonymous type
       Type: Improvement

     Status: Unassigned
   Priority: Major

    Project: Axis
 Components: 
             WSDL processing
   Versions:
             current (nightly)

   Assignee: 
   Reporter: Jongjin Choi

    Created: Sun, 10 Oct 2004 11:39 PM
    Updated: Sun, 10 Oct 2004 11:39 PM

Description:
Dear all. 

In the current version of Axis, the generated java artifacts 
name for schema anonymous type begins with underscore. 
 
For example, in the AddressBook.wsdl in the 
ws-axis/java/test/wsdl/addrNoImplSEI directory, 
 
 <xsd:element name="Phone"> 
    <xsd:complexType> 
       <xsd:all> 
            <xsd:element name="areaCode" type="xsd:int"/> 
            <xsd:element name="exchange" type="xsd:string"/> 
            <xsd:element name="number" type="xsd:string/> 
       </xsd:all> 
    </xsd:complexType> 
 </xsd:element> 
 
The generated Java artifact for the element's complex type is 
'_phone.java'. 
 
This convention may confuse the user because it does not 
follow general java naming rule. 
It would be better if the generated arftifact name is 
'Phone.java' instead of '_phone.java' in this case. 
 
The JSR-109 introduces the new QName scheme for anonymous type. 
Currently Axis makes a Java name from the QName by replacing '>' with '_'. 
I think that java name can be derived from the QName by using 
empty string instead of '_' and making the character 
following '>' as upper case. 
 
For example, the QName and its derived java name should be like these: 
 QName --> java name 
 
 X:>root   --> Root 
 X:>root>inside --> RootInside   ('I' is also upper case) 
 
If name collision occurs, it will be resolved in the 
resolveNameClashes() method of JavaGeneratorFactory. 
 
It seems that the JAX-RPC 1.1 is not clear for this. But the 
SUN's JWSDP works the way I said. 
 
I have fixed this in my local axis copy and passed all-tests with some modification for generated
artifacts name 
to the test cases for wsdl (ws-axis/java/test/wsdl/). 
 
I know that it will break existing application using Axis. 
But the change will provide the users with more friendly 
names, compatibility with other JAX-RPC runtime and less confusion. 




---------------------------------------------------------------------
JIRA INFORMATION:
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

If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


Mime
View raw message