Fix Pack Notes for
WebSphere Adapter for JDBC Version 6.0.0.2

 

This document contain the following sections:

COMPLETED CHANGE REQUESTS

UPGRADE INSTRUCTIONS

 

Completed Change Requests against the Fix Pack

This Fix Pack contains fixes for the change requests listed in the table below

Some common short forms used in the descriptions:

MCF (ManagedConnectionFactory)    EMD(Enterprise Metadata Discovery)    CEI (Common Event Infrastructure)

Adapter Version

CR Number/APAR Number

CR details

Description of fix done

6.0.0.2 83263 Add support of the JCA JDBC adapter on Linux on zSeries. The JCA JDBC adapter now supports Red Hat Enterprise Linux AS v4 and SUSE Linux Enterprise Server (SLES) 9.0 with SP2 on zSeries.

6.0.0.2

74477

JDBC IB- Event Table Name look up mechanism is not working properly.

This has been fixed as part of base classes CR 83383.

6.0.0.2

74478

JDBC IB- Event Order By look up mechanism is not working properly.

This has been fixed as part of base classes CR 83383.

6.0.0.2

74505

JCA JDBC OB: DB URL field is not affected by bidi format.

The transformation method used wrong BiDi format. This has been fixed by using the BiDiContextEIS format and the correct transformation method.

6.0.0.2

74476

JCA JDBC OB: the DB password field is not affected by bidi format.

The BiDi transformation enablement condition was wrong. This has been corrected.

6.0.0.2

74442

JCA JDBC OB: Username field is not affected by bidi format.

The BiDi transformation enablement condition was wrong. This has been corrected.

6.0.0.2

74205

JDBC EMD DBURL field is not affected by bidi format.

The transformation method used wrong BiDi format. This has been fixed by using the BiDiContextEIS format and the correct transformation method.

6.0.0.2

74509

JDBC BiDi variable is not initialized in JDBCInboundHandler.

Wrong location for initializing the BiDi on/off flag. This has been fixed with the correct location before connection establishment.

6.0.0.2

74441

JCA JDBC IB- DBURL field is not affected by the bidi format.

The transformation method used wrong BiDi format. This has been fixed by using the BiDiContextEIS format and the correct transformation method.

6.0.0.2

82878

Ignoring value of non-required property "stored procedure" causes NullPointerException.

JDBC EMD will check whether the value of property "stored procedure" is null or not before handling it. This has been fixed.

6.0.0.2

49588 / JR23224

When BOs are created for stored procedures, the PrimaryKey is set to false for all the elements of the BO.

When BOs are created for stored procedures, the PrimaryKey should be set to true for all the elements of the BO that refer to stored procedure parameters of type IN and INOUT. This has been fixed.

6.0.0.2

49589 / JR23224

When generating BO for stored procedures, the StoredProcedureName ASI only includes the stored procedure name.

When generating BO for stored procedures, the StoredProcedureName ASI should prepend the stored procedure name with the schema name. Additionally, JDBC ESD will not list all stored procedures when schema name is null. This has been fixed.

6.0.0.2

49586

Incorrect setting of output parameters on stored procedures for type INTEGER.

For a stored procedure with an output parameter of type INTEGER, the datatype was being registered as BOOLEAN. This has been fixed.

6.0.0.2

82804 / JR23360

Stored Procedure execution problem on SQLServer with null values.

If null values are assigned for stored procedure parameters, it throws a null pointer exception for SQL Server. The reason is some drivers do not allow setting null values for stored procedure parameters unless an explicit setNull method is called. This has been fixed.

6.0.0.2

49587 / JR23224

Need support for additional data types for primary key fields in inbound.

Earlier, only columns of type varchar and integer could be used as primary key columns. Now, additonal support has been added for decimal, float, long, double and date.

6.0.0.2

83098

After long hours, JCA JDBC adapter stops polling for new events.

Commit was not being called after updating and deleting events. This has been fixed.

6.0.0.2

83208

JDBC adapter with DB2 fails with UID=AUTO

The adapter was using a sequence name in case of UID=AUTO to generate the unique number. This has been fixed.

6.0.0.2

83311

JDBC EMD generates different BO names for same table in multiple runs of EMD

When two tables, stored procedures, etc exist that differ by just special character(s), EMD will append numbers to distinguish between the XSDs generated for both. The counter that sets this number was being reset only when WID was closed; so, if the user re-runs EMD without closing WID to generate XSDs, numbers would be appended to table names that did not have a duplicate as well. To avoid this, the counter is now being reset each time an EMD wizard is run.

6.0.0.1

67109

 The panel for setting BO level ASI does not come up and the ESD does not respond

The Configuration Parameters screen has been updated to add a Schema property to each stored procedure type group. The Schema property is a single select property that will list all the schemas in the database. When a database schema is selected in the Schema property, the StoredProcedure property in the same Property group, will be updated with a list of the stored procedures in the selected schema.

6.0.0.1

73104

Unable to set the  XA Resource properties in EMD

 Two new properties have been added to the ManagedConnectionProperties Property Group on the Generate Artifacts screen, XADataSourceName and XADatabaseName. The MCF properties are displayed when "Outbound ServiceType" is chosen on the Configure Objects screen, and "Use discovered connection properties" is selected on the Generate Artifacts screen.

6.0.0.1

73614

 The PropertyName value in Operation ASI is set to the column name instead of the business object attribute name.

The Stored Procedure parameter properties on the Configuration Parameters screen will list the business object attributes rather than the table's column.
The <jdbcasi:PropertyName> in Operation ASI will be set to the business object attribute name in the business object.

6.0.0.1

67622

Cannot generate business objects from database objects where the table or column name contains pound sign (#).

EMD has been modified to remove # characters from Business Object names and attribute names. The removed characters will not be replaced with any other characters. Actual DB names will still be retained in the ASI (TableName and ColumnName)

6.0.0.1

49070

Adapter does not throw an error if child record to be updated is not present in the database

A warning was being traced in the log file, that has now been changed to throw an exception.

6.0.0.1

49258

When the sample provided in the JDBC Adapter was published from the WID Test Tool, it deployed successfully and the application started fine. The Inbound is working fine with it. But when testing the Outbound, the following exception was thrown:

"java.lang.NoClassDefFoundError: JDBC/Outbound/JDBCOutboundInterface (wrong name: jdbc/outbound/JDBCOutboundInterface) ".

The sample EAR was generated incorrectly and that has now been corrected and a working sample EAR is available.

6.0.0.1

67449

The error message if incorrect JDBCDriverClass is specified was not stating the error appropriately

The proper error message is now displayed if JDBCDriverClass is specified incorrectly.

6.0.0.1

73106

Bad problem determination for XA Attributes

XA Attributes were not being validated. Validation checks with appropriate error messages have been added for these.

6.0.0.1

73618

JDBC ASI causes Web Services to fail.

There were extra blank spaces in JDBCASI.xsd, in the BiDi section that have been removed.

6.0.0.1

73786

Max cursors exceeded for JDBC inbound using Oracle database

There was a cursor leak during processing of events in inbound that has been fixed.

6.0.0.1

73799

JDBC needs to use cached connections

The JDBCManagedConnection class was not caching JDBC connections. That has been fixed.

6.0.0.1

67824

JDBC adapter unable to retrieve business object from DB correctly.

The single cardinality child foreign key was being set incorrectly, so retrieve of hierarchical BOs was not correct. This has been fixed.

6.0.0.1

73432

BiDiContext can't be added at BO level in BO editor

There were extra blank spaces in JDBCASI.xsd, in the BiDi section that have been removed.

6.0.0.1

73426

EMD's EventTableName BiDi Format field should not be mandatory

The field named EventTableName BiDi Format is now optional.

6.0.0.1

73448

In BiDiStringTransformation method formatIn and formatOut values for Inbound and Outbound are switched.

This has been fixed in BiDiStringTransformation() method; the formatIn and formatOut values have been properly set for Inbound and Outbound.

6.0.0.1

73436

BO returned in Inbound is in wrong BiDi format.

This has been fixed.

6.0.0.1

73207

'relativePath' was not handled correctly in EMD

Changed to handle the scenario where 'relativePath' is not prefixed with "./". It will handle both when this prefix is present as well as when the prefix is absent.

6.0.0.1

72346

'setReauthSupported' in Managed Connection Factory does not work

This has been fixed. The type has been changed from 'boolean' to 'Boolean'.

6.0.0.1

48839

When polling in UNORDERED delivery mode, if an error occurred, events delivered could show up as undelivered within the event table

Events are now cleaned up when delivered in this scenario.

6.0.0.1

73563

Publishing business objects as byte arrays caused performance problems

Changed the byte array to HexBinary encoding.

6.0.0.1

72743

Byte arrays for published business objects would show up in the log as one line per byte.

HexBinary encoding helps with this problem. We also recommend running production systems with log level WARNING, so these messages will not appear at all in the log with that level.

6.0.0.1

73738

Inbound CEI events would not correlate

Fixed this to add correlation information. 

6.0.0.1

73449

BiDi format for connection metadata was not handling an empty string correctly

This has been fixed.

6.0.0.1

73477

Enhance BiDi log/trace capabilities

Tracing has been added for BiDi diagnostics.

6.0.0.1

73566 

Business Object BiDi format not working correctly. 

This has been fixed.

6.0.0.1

73143

BiDi properties were not validated in EMD

The BiDi properties are now validated in EMD.

6.0.0.1

73023

The 'TurnBiDiOff' property in EMD was appearing in a confusing way

This has been fixed. The default is "false" when BiDi in EMD is active.

6.0.0.1

73295

Contextual LTR or RTL component of BiDi format is not passed from EMD 1st screen to 5th

This has been fixed.

6.0.0.1

72745

Inconsistent time and date format between log and trace

The trace time format has been updated to match the log's format.

6.0.0.1

67575

AccessControlException thrown when Java 2 security is turned on in the WPS

Changes have been made to ensure that AccessControlException is not thrown when Java 2 security is turned on.

6.0.0.1

67845

Default ManagedConnectionFactory credentials do not work properly.

Updated connection code to use credentials specified in the outbound properties when no authentication alias is configured.

6.0.0.1

74333

JCA JDBC adapter with Sybase Stored Procedure does not generate the BO xsd.

BO xsds for stored procedures which have special characters in their names were not getting generated. Updated the code to remove special characters from stored procedure names, table names, views, synonyms/nicknames and column names before setting the name on the BO.

6.0.0.1

67848

JDBC ESD: Expected INFO level message is not logged in .log.cbe file.

There was an overlap in the message ids of EMD and the adapter. This has been fixed by setting unique message ids for EMD and the adapter. Specifically, the ones for EMD have been changed.

6.0.0.1

67866

JDBC EMD cannot handle Hindi or Thai characters in the SQL server.

The driver method DatabaseMetaData.getColumns would not work correctly when the column name was in Hindi or Thai characters. This resulted in no records being returned in a result set. The set could therefore not be closed as it needed at least one returned record for closure. The code has been changed to close the result set in any case.

 

 Upgrade Instructions

 To upgrade to the Fix Pack version 6.0.0.2, do the following:

  1. Ensure you have followed the 'Installation Instructions' section in the download link before proceeding further.
  2. If you need to use the Fix Pack for EMD (Enterprise Metadata Discovery), delete the connector project in WID, import the new rar and apply the EIS specific dependency files. The following steps describe how to do this.

v     Open the Java Build Path for the SCA module and remove the Connector project selected on projects tab.

v     Open the dependency editor and remove the connector project.

v     Delete the connector project from workspace.

v     Import the new rar file, CWYBC_JDBC. Add any dependency files from EIS specific APIs as needed.

v     Open Java build path for the SCA module and select the Connector project selected on projects tab.

v     Open the dependency editor and add the connector project if it is not already present and check "Deploy with Module".

  1. If you need to update deployed applications on WPS

v     Select "Update" for the corresponding application on WPS Admin Console

v     Select "Single Module" with relative path as name of the rar file - CWYBC_JDBC.rar

v     Click the "Browse" button on local file system to select the updated rar file that has the changes.

v     Select the default values in the remaining steps and click 'Finish'. This will ensure that existing configurations e.g. MCF (Managed Connection Factory), are not changed and jars will be merely updated.

  1. A new sample JDBCApp.ear has been provided.

  

Last modified: Feb 21, 2006