Fixes are available
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