I am using jbossws-1.0.0 in JBoss 4.0.2 CR2 with JDK 1.5.0_6.

I have a web service that uses a value type implementing the enum pattern:


  | 
  | public class MembershipStatus {
  |   public static final String _current = "current";
  |   public static final String _expired = "expired";
  |   public static final String _unknown = "unknown";
  |   
  |   public static final MembershipStatus CURRENT = new 
MembershipStatus(_current);
  |   public static final MembershipStatus EXPIRED = new 
MembershipStatus(_expired);
  |   public static final MembershipStatus UNKNOWN = new 
MembershipStatus(_unknown);
  |   
  |   private static Map<String, MembershipStatus> statuses; 
  |   
  |   static {
  |     statuses = new HashMap<String, MembershipStatus>();
  |     statuses.put(_current, CURRENT);
  |     statuses.put(_expired, EXPIRED);
  |     statuses.put(_unknown, UNKNOWN);
  |   }
  |   
  |   public static MembershipStatus fromValue(String candiateValue) {
  |     MembershipStatus result = statuses.get(candiateValue);
  |     if (result == null) {
  |       throw new IllegalArgumentException(candiateValue);
  |     }
  |     return result;
  |   }
  |   
  |   
  |   private String value;
  |    
  |   protected MembershipStatus(String newValue) {
  |     value = newValue;
  |   }
  | 
  |   public String getValue() {
  |     return value;
  |   }
  | }
  | 

jbossws recognizes this pattern enough to generate the correct WSDL:


  | .
  | .
  | .
  |    <simpleType name='MembershipStatus'>
  |     <restriction base='string'>
  |      <enumeration value='current'/>
  |      <enumeration value='expired'/>
  |      <enumeration value='unknown'/>
  |     </restriction>
  |    </simpleType>
  | .
  | .
  | .
  | 

but when I run wstools using this wstools-confg.xml 


  | 
  | <configuration xmlns="http://www.jboss.org/jbossws-tools";
  |    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
  |    xsi:schemaLocation="http://www.jboss.org/jbossws-tools 
http://www.jboss.org/jbossws-tools/schema/jbossws-tool_1_0.xsd";>
  |   
  |   <wsdl-java 
file="Generated-src/META-INF/wsdl/FBCMembershipVerification.wsdl">
  |     <mapping file="META-INF/jaxrpc-mapping.xml" />
  |   </wsdl-java>
  |   
  | </configuration>
  | 

It generates Java code for everything except the MembershipStatus  type.  It 
also generates other classes which the type as though it is expected to have 
been generated.

I tried supplying my own implementation of MembershipStatus  but a call which 
returns the type fails because it cannot obtain deserializer factory for 
MembershipStatus.

Am I doing something wrong or is this a missing feature?

I know that generating for JDK5 enums is not yet supported from reading bug 
JBWS-446 but reading JBWS-231 lead me to believe this problem had been fixed.

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3943610#3943610

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3943610


-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to