IBM Support

PM73085: THE PACKAGE FOR THE GENERATED JAVA CLASSES CORRESPONDING TO A SINGLE INLINE SCHEMA IN A WSDL IS MISSING THE SCHEMA VERSION

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Abstract:
    
    Attempts to generate a Top-down JAX-WS web service or a JAX-WS
    client using the feature 'Manage generated code for multiple
    schema versions' fails to generate a package with a version
    number corresponding to inline schema version number in the
    WSDL.
    
    Problem:
    
    This is a follow problem to reported defect:
    - APAR PM70975
    'JAX-WS WebSphere option 'Manage generated code for multiple
    schema versions', generates zero length packageversions.xml
    file'
    
    https://www.ibm.com/support/entdocview.wss?uid=swg1PM70975
    
    Rational Application Developer v8.0.4.1 and 8.5 introduced a new
    JAX-WS code generation feature 'Manage generated code for
    multiple schema versions' to handle multiple Web Service
    WSDL/schema versions. The feature can be enabled in the
    workspace preferences:
    
    Window ? Preferences ? Web Services ? WebSphere ? JAX-WS Code
    Generation:
    [x]  Manage generated code for multiple schema versions.
    
    and is intended for use in top-down and Client JAX-WS generation
    from a WSDL situations.
    
    This feature supports generating packages with a post fixed
    major version number for a single inline schema in a WSDL. It
    does not support multiple inline schemas or major_minor
    versions.
    
    In this reported defect, the package (targetnamespace) of the
    generated Java stub/class(s) corresponding to a single inline
    schema in a WSDL is missing the version number of the inlined
    schema corresponding to the wsdl_{major version number}.
    
    For example a WSDL has types with a single inline schema
    containing schema (xsd files) imports and both elements and
    complex types. The inline schema has a  major version number
    (e.g.  '...version='3.0').
    The web service generated java package for the 'single' inline
    schema is missing the specified schema 'version' number as shown
    in the following example excerpt from {SOME_WSDL}_3.wsdl:
    
    '...
      ?types?
        ?xs:schema
          xmlns:baserequest
    ='http://{somecompany}.com/schemas/framework/baserequest'
          xmlns:baseresponse
    ='http://{somecompany}.com/schemas/framework/baseresponse'
          xmlns:statusmessage
    ='http://{somecompany}.com/schemas/framework/statusmessage'
          xmlns:id
    ='http://{somecompany}.com/schemas/cim/common/id'
          xmlns:numerictext
    ='http://{somecompany}.com/schemas/cim/common/numerictext'
          xmlns:bankaccount
    ='http://{somecompany}.com/schemas/cim/billingandcollection/bank
    account'
          xmlns:requestsresponses
    ='http://{somecompany}.com/services/businessdomain/productlifecy
    clemanagement/billingandcollection/clientbillingarrangementreque
    stsresponses'
          xmlns:tns
    ='http://{somecompany}.com/services/businessdomain/productlifecy
    clemanagement/billingandcollection/clientbillingarrangementreque
    stsresponses'
          targetNamespace
    ='http://{somecompany}.com/services/businessdomain/productlifecy
    clemanagement/billingandcollection/clientbillingarrangementreque
    stsresponses'
          version        ='3.0'?
    
          ?xs:import
    schemaLocation='../../../../schemas/cim/common/IDType_1.xsd'
    
    namespace='http://{somecompany}.com/schemas/cim/common/id'/?
          ?xs:import
    schemaLocation='../../../../schemas/cim/common/NumericText_1.xsd
    '
    
    namespace='http://{somecompany}.com/schemas/cim/common/numericte
    xt'/?
          ?xs:import
    schemaLocation='../../../../schemas/cim/billingandcollection/Ban
    kAccount_3.xsd'
    
    namespace='http://{somecompany}.com/schemas/cim/billingandcollec
    tion/bankaccount'/?
    
          ?xs:import
    schemaLocation='../../../../schemas/framework/StatusMessage_2.xs
    d'
    
    namespace='http://{somecompany}.com/schemas/framework/statusmess
    age'/?
            ?xs:import
    schemaLocation='../../../../schemas/framework/BaseRequest_2.xsd'
    
    namespace='http://{somecompany}.com/schemas/framework/basereques
    t'/?
            ?xs:import
    schemaLocation='../../../../schemas/framework/BaseResponse_2.xsd
    '
    
    namespace='http://{somecompany}.com/schemas/framework/baserespon
    se'/?
    
          ?xs:import
    schemaLocation='../../../../schemas/framework/BusinessException_
    2.xsd'
    
    namespace='http://{somecompany}.com/schemas/framework/businessex
    ception'/?
          ?xs:import
    schemaLocation='../../../../schemas/framework/SystemException_2.
    xsd'
    
    namespace='http://{somecompany}.com/schemas/framework/systemexce
    ption'/?
          ?xs:import
    schemaLocation='../../../../schemas/framework/FatalException_2.x
    sd'
    
    namespace='http://{somecompany}.com/schemas/framework/fatalexcep
    tion'/?
    
          ?xs:element name='RetrieveClientBankAccountRequest'
    type='requestsresponses:ClientIDRequestType'/?
    ... other elements ....
          ?xs:element name='ClientBankAccountStatusResponse'
    type='requestsresponses:ClientBankAccountStatusResponseType'/?
    
          ?xs:complexType name='ClientIDRequestType'?
          ...      ?/xs:complexType?
          ?xs:complexType name='ClientBankAccountRequestType'?
    ...      ?/xs:complexType?
          ?xs:complexType
    name='ClientBankAccountUpdateRequestType'?...
    ?/xs:complexType?
          ?xs:complexType
    name='ClientBankAccountDeleteRequestType'?...
          ?/xs:complexType?
    
          ?xs:complexType name='ClientBankAccountResponseType'? ...
          ?/xs:complexType?
                ?xs:complexType name='ClientStatusResponseType'?
    ...
          ?/xs:complexType?
          ?xs:complexType
    name='ClientBankAccountStatusResponseType'?    ...
    ?/xs:complexType?
    
        ?/xs:schema?
      ?/types?
    ...'
    
    
    The 'package' for the generated Java stubs/class(s) for the
    inline schema corresponding to:
     targetNamespace
    ='http://{somecompany}.com/services/businessdomain/productlifecy
    clemanagement/scheduledactivity
    maintenancerequestsresponses'
    , in the WSDL
    is missing the inline schema version number : '...version
    ='3.0'..'
    
    The generated package shows as:
    
    com.{somecompany}.services.businessdomain.productlifecyclemanage
    ment.billingandcollection.clientbillingarrangementrequestsrespon
    ses
    
    instead of the expected:
    
    com.{somecompany}.services.businessdomain.productlifecyclemanage
    ment.billingandcollection.clientbillingarrangementrequestsrespon
    ses_3
    
    
    
    
    The same problem shows for the package information in the
    generated 'packageversions.properties' file:
    
    
    //---packageversions.properties
    #
    #Wed Aug 29 12:57:05 EDT 2012
    com.{somecompany}.schemas.framework.serviceexception_2=2.1
    com.{somecompany}.schemas.cim.contactinformation.postaladdress_6
    =6.0
    com.{somecompany}.schemas.cim.contactinformation.url_1=1.0
    com.{somecompany}.schemas.framework.contextsummary_2=2.0
    com.{somecompany}.schemas.framework.severity_1=1.0
    com.{somecompany}.schemas.framework.status_1=1.1
    com.{somecompany}.schemas.framework.baserequest_2=2.1
    com.{somecompany}.schemas.framework.errorcode_2=2.0
    com.{somecompany}.schemas.framework.param_2=2.0
    com.{somecompany}.schemas.framework.systemexceptionlocation_1=1.
    0
    com.{somecompany}.schemas.framework.systemexception_2=2.0
    com.{somecompany}.schemas.cim.contactinformation.besttimetoconta
    ct_1=1.0
    com.{somecompany}.schemas.cim.billingandcollection.bankaccount_3
    =3.0
    com.{somecompany}.schemas.framework.fatalexception_2=2.0
    com.{somecompany}.schemas.cim.contactinformation.emailaddress_6=
    6.0
    com.{somecompany}.schemas.framework.exceptionentry_2=2.0
    com.{somecompany}.schemas.framework.baseresponse_2=2.0
    com.{somecompany}.schemas.framework.statusmessage_2=2.0
    com.{somecompany}.schemas.cim.contactinformation.contactpoint_4=
    4.0
    
    com.{somecompany}.services.businessdomain.productlifecyclemanage
    ment.billingandcollection.clientbillingarrangementrequestsrespon
    ses=3.0
    
    com.{somecompany}.schemas.cim.contactinformation.im_1=1.0
    com.{somecompany}.schemas.cim.contactinformation.phonenumber_5=5
    .0
    com.{somecompany}.schemas.cim.common.codetype_1=1.5
    com.{somecompany}.schemas.framework.businessexception_2=2.0
    //--
    
    Instead of:
    
    
    com.{somecompany}.services.businessdomain.productlifecyclemanage
    ment.billingandcollection.clientbillingarrangementrequestsrespon
    ses=3.0
    
    ,it should show:
    
    com.{somecompany}.services.businessdomain.productlifecyclemanage
    ment.billingandcollection.clientbillingarrangementrequestsrespon
    ses_3=3.0
    
    
    corresponding to the inline schema version number in the wsdl.
    
    
    Local fix:
    
    There is no known workaround at this time, short of not using an
    inline schema.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    The generated package version properties file can be empty
    when there are inline schemas with types that have a
    version.
    
    The properties file may be missing versions for an inline
    schema.
    

Problem conclusion

  • The package version properties file is no longer empty.
    The fix involved taking into account the version of one
    inline schema in the WSDL.
    
    The fix for this APAR is included in Rational Application
    Developer v8.0.4.2.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM73085

  • Reported component name

    RATL APP DEV WI

  • Reported component ID

    5724J1901

  • Reported release

    804

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-09-17

  • Closed date

    2012-12-15

  • Last modified date

    2012-12-15

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    RATL APP DEV WI

  • Fixed component ID

    5724J1901

Applicable component levels

  • R804 PSN

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSRTLW","label":"Rational Application Developer for WebSphere Software"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.0.4","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
15 December 2012