You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Daniel Kulp (Resolved) (JIRA)" <ji...@apache.org> on 2012/03/31 02:57:25 UTC

[jira] [Resolved] (CXF-4216) use wsdl2java to genarate source, if the simpleType node(statusCode) have subnode like then can not genarate the StatusCode class

     [ https://issues.apache.org/jira/browse/CXF-4216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Kulp resolved CXF-4216.
------------------------------

       Resolution: Not A Problem
    Fix Version/s: Invalid
         Assignee: Daniel Kulp


This is working as per JAXB specification.  (and, since it's JAXB, it's part of the jaxb code and not part of CXF)  If you check the JAXB Spec, section 7.5.1, it describes a customization that can be made via a jaxb binding file to control when and how "Type Safe Enums" are generated.  The "typeSafeEnumMemberName" defaults to skipGeneration . Thus, if a name cannot map to a valid Java identifier, the enum is skipped.   That's what is occuring in your case.  




                
> use wsdl2java to genarate source, if the simpleType node(statusCode) have subnode like <xs:enumeration value="0002" /> then can not genarate the StatusCode class
> -----------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CXF-4216
>                 URL: https://issues.apache.org/jira/browse/CXF-4216
>             Project: CXF
>          Issue Type: Task
>          Components: JAX-WS Runtime
>    Affects Versions: 2.5.2
>         Environment: jdk1.6 windowXp
>            Reporter: qiushengw
>            Assignee: Daniel Kulp
>             Fix For: Invalid
>
>
> the wsdl is bellow:
> <?xml version='1.0' encoding='UTF-8'?><wsdl:definitions name="spServices" targetNamespace="http://www.naf.com.sg/webservice/udms/spService" xmlns:ns1="http://cxf.apache.org/bindings/xformat" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.naf.com.sg/webservice/udms/spService" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
>   <wsdl:types>
> <xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://www.naf.com.sg/webservice/udms/spService" xmlns:ns1="http://www.naf.com.sg/webservice/udms/createSPAccountServiceTransaction" xmlns:tns="http://www.naf.com.sg/webservice/udms/spService" xmlns:xs="http://www.w3.org/2001/XMLSchema">
> <xs:import namespace="http://www.naf.com.sg/webservice/udms/createSPAccountServiceTransaction" />
> <xs:element name="createSPAccountServiceTransaction" type="tns:createSPAccountServiceTransaction" />
> <xs:element name="createSPAccountServiceTransactionResponse" type="tns:createSPAccountServiceTransactionResponse" />
> <xs:complexType name="createSPAccountServiceTransaction">
> <xs:sequence>
> <xs:element minOccurs="0" name="request" type="ns1:createSPAccountServiceTransactionRequest" />
> </xs:sequence>
> </xs:complexType>
> <xs:complexType name="createSPAccountServiceTransactionResponse">
> <xs:sequence>
> <xs:element minOccurs="0" name="return" type="ns1:createSPAccountServiceTransactionResponse" />
> </xs:sequence>
> </xs:complexType>
> </xs:schema>
> <xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://www.naf.com.sg/webservice/udms/createSPAccountServiceTransaction" xmlns="http://www.naf.com.sg/webservice/udms/createSPAccountServiceTransaction" xmlns:ns1="http://www.naf.com.sg/webservice/udms/activation/createActivationTrans" xmlns:ns2="http://www.naf.com.sg/webservice/udms/audit" xmlns:ns3="http://www.naf.com.sg/webservice/udms/activation/createSPActivationTrans" xmlns:xs="http://www.w3.org/2001/XMLSchema">
> <xs:import namespace="http://www.naf.com.sg/webservice/udms/activation/createActivationTrans" />
> <xs:import namespace="http://www.naf.com.sg/webservice/udms/audit" />
> <xs:import namespace="http://www.naf.com.sg/webservice/udms/activation/createSPActivationTrans" />
> <xs:complexType name="createSPAccountServiceTransactionRequest">
> <xs:complexContent>
> <xs:extension base="ns2:auditableServiceRequest">
> <xs:sequence>
> <xs:element name="email" type="xs:string" />
> <xs:element name="spId" type="xs:string" />
> <xs:element name="spName" type="xs:string" />
> <xs:element name="status" type="xs:string" />
> <xs:element name="uen" type="xs:string" />
> <xs:element name="userAcctDTO" type="ns1:userAddressDTO" />
> </xs:sequence>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> <xs:complexType name="createSPAccountServiceTransactionResponse">
> <xs:sequence>
> <xs:element minOccurs="0" name="statusCode" type="ns3:statusCode" />
> <xs:element minOccurs="0" name="statusMessage" type="ns3:statusMessage" />
> </xs:sequence>
> </xs:complexType>
> </xs:schema>
> <xs:schema targetNamespace="http://www.naf.com.sg/webservice/udms/audit" version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
> <xs:complexType abstract="true" name="auditableServiceRequest">
> <xs:sequence>
> <xs:element minOccurs="0" name="auditCategory" type="xs:string" />
> <xs:element name="auditId" type="xs:long" />
> <xs:element minOccurs="0" name="transactionMsg" type="xs:string" />
> <xs:element name="user" type="xs:string" />
> <xs:element minOccurs="0" name="userGrp" type="xs:string" />
> </xs:sequence>
> </xs:complexType>
> </xs:schema>
> <xs:schema targetNamespace="http://www.naf.com.sg/webservice/udms/activation/createSPActivationTrans" version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
> <xs:simpleType name="statusCode">
> <xs:restriction base="xs:string">
> <xs:enumeration value="0000" />
> <xs:enumeration value="0001" />
> <xs:enumeration value="0002" />
> </xs:restriction>
> </xs:simpleType>
> <xs:simpleType name="statusMessage">
> <xs:restriction base="xs:string">
> <xs:enumeration value="SP Account Created Successfully" />
> <xs:enumeration value="SP Account Already Exist" />
> <xs:enumeration value="SP Account creation failed" />
> </xs:restriction>
> </xs:simpleType>
> </xs:schema>
> <xs:schema targetNamespace="http://www.naf.com.sg/webservice/udms/activation/createActivationTrans" version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
> <xs:complexType name="userAddressDTO">
> <xs:sequence>
> <xs:element minOccurs="0" name="acctType" type="xs:string" />
> <xs:element name="category" type="xs:string" />
> <xs:element name="detailsEnc" type="xs:string" />
> <xs:element name="postalCode" type="xs:string" />
> </xs:sequence>
> </xs:complexType>
> </xs:schema>
>   </wsdl:types>
>   <wsdl:message name="createSPAccountServiceTransaction">
>     <wsdl:part element="tns:createSPAccountServiceTransaction" name="parameters">
>     </wsdl:part>
>   </wsdl:message>
>   <wsdl:message name="createSPAccountServiceTransactionResponse">
>     <wsdl:part element="tns:createSPAccountServiceTransactionResponse" name="parameters">
>     </wsdl:part>
>   </wsdl:message>
>   <wsdl:portType name="spServiceWS">
>     <wsdl:operation name="createSPAccountServiceTransaction">
>       <wsdl:input message="tns:createSPAccountServiceTransaction" name="createSPAccountServiceTransaction">
>     </wsdl:input>
>       <wsdl:output message="tns:createSPAccountServiceTransactionResponse" name="createSPAccountServiceTransactionResponse">
>     </wsdl:output>
>     </wsdl:operation>
>   </wsdl:portType>
>   <wsdl:binding name="spServicesSoapBinding" type="tns:spServiceWS">
>     <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
>     <wsdl:operation name="createSPAccountServiceTransaction">
>       <soap:operation soapAction="" style="document" />
>       <wsdl:input name="createSPAccountServiceTransaction">
>         <soap:body use="literal" />
>       </wsdl:input>
>       <wsdl:output name="createSPAccountServiceTransactionResponse">
>         <soap:body use="literal" />
>       </wsdl:output>
>     </wsdl:operation>
>   </wsdl:binding>
>   <wsdl:service name="spServices">
>     <wsdl:port binding="tns:spServicesSoapBinding" name="spServiceEndpoint">
>       <soap:address location="http://localhost:9999/udms-web/services/spService" />
>     </wsdl:port>
>   </wsdl:service>
> </wsdl:definitions>
> I need to use wsdl2java to create the client and server, but I can not create the StatusCode class, wsdl2java consider the stausCode as String.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira