IBM WebSphere IBM WebSphere Adapter Foundation Classes, version 7.5.0.2_IF01 notes

This document contains the following sections:
Enhancements and fixes
New and modified connector properties
Upgrade notes

This table lists the enhancements and fixes in fix pack version 7.5.0.2_IF01.
Enhancements
#CRAPARTitleDetails
There are no enhancements in this fix pack.
Fixes
#RTC Defect #APARTitleDetails
16821Create EventStore to ActivationSpec mapping for ConnectionLeak issue in recovery
Symptom: Connection Leak during XARecovery
Resolution: AFC recovery implementation modified to handle the connection leak issue.
26819EventPersistenceDBImpl getEvents method needs to check if xid is null while picking new events
Symptom: Adapter was returning both in-doubt and new events to AFC while executing the getEvents API
Resolution: While fetching new events two checks needs to be performed i) Events status should be 0 ii) xid should be null . getEvents API will now filter and fetch new events based on these two crtiteria .
36818EventStoreBackedXAResource throws unhandled NullPointerException in Commit and Rollback calls for when event is null .
Symptom: NullPointerExceptions seen in the logs during Inbound processing of events .
Resolution: With the fix when an event for a requested Xid is not found in the EventStore, an XA exception will be thrown, which will be sent to the container. Depending on the error code set on the XAException based on one phase or two phase commit, the container will send an appropriate call. Example in case of two phase commit the container will reissue a commit call.
46816Error while formatting the Xid
Symptom: Format check for pending xids from adapter was failing, because of which recovery of pending transactions not taking place ..
Resolution: Xid format check in XidImpl fixed to verify the correctness of the xid format .
56815Forget and Rollback calls are not setting xid to null, post recovery
Symptom: Events that have been rolled back during recovery are not picked up for future processing..
Resolution: Events that have been rolled back during recovery needs to be made eligible for future poll cycles to fetch them, this is done by updating these events in the event store such that they qualify as new events, that can be fetched by future poll cycles.
66744CheckIllegalXMLCharacter is using String instead of StringBuffer which will eventually lead to a high heap usage
Symptom: Use of String in CheckIllegalXMLCharacter leads to creation of large number of String objects as String is immutable, heap profiling showed increasing number of String objects that are not getting cleaned up, this has a potential to cause a problem when the input size is large.
Resolution: Changed the implementation to use StringBuffer instead of String..
76861When the retry connection limit is set to a value greater than 0, the validation check is performed only on the first matched connection
Symptom: When the retry connection limit is set to a value greater than 0, the connection is checked for validity, If valid, the connection is returned, else null signalling container to create a new connection. This whole process has to be repeated until a valid connection is found in the given candidate connection set before returning null. However, this stops at the first matching connection in the given set of candidate connections by the container.
Resolution: With the fix when the "retry connection limit" is > 0, you will have the AFC component iterate through all matched managed connections and return one which is valid. If none is found to be valid it would return null..
86928JR42026Adapter stops polling once WorkRejectedException is thrown by container
Symptom: WorkRejectedException in logs, followed by adapter stopping to poll
Resolution: Work that was rejected was not getting removed from the workInPorgress list which was resulting in no new work to be added for submission, as a result of which adapter could not poll once a poll work was rejected.
97009Adapter throws NullpointerException, when rolling back the XAResource if the event was not delivered to the endpoint
Symptom: The Adapter throws NullPointerException when updating the event persistence table with XID as null on the rollback() method of the XAResource.
Resolution: The issue is fixed so that the event persistence table is updated with XID as null during the rollback() method of the XAResource.
107023Adapter throws ArrayIndexOutOfBoundException during recovery, if the event being recovered does not exist in the event persistence table
Symptom: Adapter throws ArrayIndexOutOfBoundException during recovery, if the event being recovered does not exist in the event persistence table
Resolution: The issue has been fixed so that the Adapter returns null if the event is not present in the event table.
117099DataStoreAdapterException is thrown when Adapter tried to close the connection to the event persistence database table
Symptom: While running in a local transaction in a non-auto commit mode, the adapter attempts to close the SQL connection if the SQL operations fails. This results in a DataStoreAdapterException due to attempt to closing a connection which is in transaction.
Resolution: The issue has been fixed so that rollback is called on the failed transaction before closing the transaction
127184FileNotFound issue when file URL points to file within a jar in WBIDataBindingGenerator
Symptom: FileNotFound issue when file URL points to file within a jar
Resolution: Problem was occuring because the AFC code assumed that the URL will also point to a file, support for other protocols was not provided. This is corrected to enable support for all protocols in URL


This table lists new connector properties
#VersionPlatformAdd or RemoveProperty (Note that property names are case sensitive)
There is no new connector property introduced/modified for this version of fix pack.


To upgrade to the fix pack version 7.5.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 External Service, delete the connector project in the IBM Integration Designer, import the new rar and apply the EIS specific dependency files. The following steps describe how to do the same.
   a. Open the Java Build Path for the SCA module and remove the Connector project selected on projects tab.
   b. Open the dependency editor and remove the connector project.
   c. Delete the connector project from workspace.
   d. Import the new rar file. Add any dependency files from EIS specific APIs as needed.
   e. Open Java build path for the SCA module and select the Connector project selected on projects tab.
   f. Open the dependency editor and add the connector project if it is not already present and check "Deploy with Module".
3. If you need to update deployed applications on the IBM Process Server.
   a. Select "Update" for the corresponding application on the IBM Process Server Admin Console.
   b. Select "Single Module" with relative path as name of the rar file - CWYFT_FTPFile.rar.
   c. Click the "Browse" button on local file system to select the updated rar file that has the changes.
   d. Select the default values in the remaining steps and click 'Finish'. This will ensure that existing configurations e.g. MCF, are not changed and jars will be merely updated.


May 18th, 2012 6:00 PM
(C) 2012 IBM Corporation. Proprietary and Confidential. All Rights Reserved.