[ 
https://issues.apache.org/jira/browse/AXIS2-4128?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12646669#action_12646669
 ] 

thejenix edited comment on AXIS2-4128 at 11/11/08 1:35 PM:
----------------------------------------------------------------

After some investigation, it appears that the problem is in 
DefaultSchemaGenerator.java 
(org.apache.axis2.description.java2wsdl.DefaultSchemaGenerator), in the 
generateSchema(JClass javaType)... method, on line
652...heres the code from that area:

648:        for (int i = 0; i < tempFields.length; i++) {
649:        // create a element for the field only if it is public
650:        // and there is no property with the same name
651:        if (tempFields[i].isPublic()) {
652:            if (tempFields[i].isStatic()){
653://                 We do not need to expose static fields
654:                continue;
655:            }

tempFields[i].isStatic() is true for each of the enum fields.  Is that 
normal/expected?  I noticed that the modifiers of the field are 16409 (decimal, 
4019h) which has a bit on that is not defined by 
java.lang.reflect.Modifier...is that something that can be checked to exclude 
enum values from this conditional?

----Edit----

I just checked and a normal public static field declared in EnumType has a 
modifier value of 9...a public static final field has a modifier value of 25 
(19h)...that suggests there may be information in the modifiers to say a field 
is an enum value.

      was (Author: thejenix):
    After some investigation, it appears that the problem is in 
DefaultSchemaGenerator.java 
(org.apache.axis2.description.java2wsdl.DefaultSchemaGenerator), in the 
generateSchema(JClass javaType)... method, on line
652...heres the code from that area:

648:        for (int i = 0; i < tempFields.length; i++) {
649:        // create a element for the field only if it is public
650:        // and there is no property with the same name
651:        if (tempFields[i].isPublic()) {
652:            if (tempFields[i].isStatic()){
653://                 We do not need to expose static fields
654:                continue;
655:            }

tempFields[i].isStatic() is true for each of the enum fields.  Is that 
normal/expected?  I noticed that the modifiers of the field are 16409 (decimal, 
4019h) which has a bit on that is not defined by 
java.lang.reflect.Modifier...is that something that can be checked to exclude 
enum values from this conditional?
  
> Java2WSDL does not generate enum fields
> ---------------------------------------
>
>                 Key: AXIS2-4128
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4128
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>    Affects Versions: 1.4.1
>         Environment: Windows XP SP2, Java 1.6, Maven2 2.0.8, Maven2 Axis2 
> Java2WSDL plugin 1.4.1
>            Reporter: Jesse Rosalia
>
> I have an interface that has a method that takes an enum value as a parameter:
> public interface Interface {
>       public void Method(String param1,
>                       String param2, EnumType param3,
>                       String param4, Calendar param5, int param6);
> }
> EnumType is defined as:
> public enum EnumType {
>       VALUE1,
>       VALUE2,
>       VALUE3,
>       VALUE4,
>       VALUE5
> }
> When I use Java2WSDL to generate a WSDL from this interface, it creates the 
> complex type but does not add any values:
>             <xs:complexType name="EnumType">
>                 <xs:complexContent>
>                     <xs:extension base="xs:Enum">
>                         <xs:sequence/>
>                     </xs:extension>
>                 </xs:complexContent>
>             </xs:complexType>
> This happens when I execute the Java2WSDL step through the maven plugin as 
> well as if I run the Java2WSDL command line class 
> (org.apache.ws.java2wsdl.Java2WSDL).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to