IBM WebSphere WebSphere Adapter for JDE, version 7.0.0.1_IF09 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 interim fix version 7.0.0.1_IF09.
Enhancements
#CRAPARTitleDetails
There are no enhancements in this interim fix.
Fixes
#CRAPARTitleDetails
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.
26818EventStoreBackedXAResource 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.
36816Error 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 .
46815Forget 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.
56744CheckIllegalXMLCharacter 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.
66322EventManager is tried to be shutdown infinitely
Symptom: If an exception occurs while trying to shutdown the EventManager, EventManager is tried to be shutdown infinitely. This is because the JCA timer was not getting cancelled.
Resolution: Even if an exception occurs while EventManager is being tried to shutdown, the JCA timer is cancelled so as to make sure their life cycles are in sync
76928JR42026WorkRejectedException in logs, followed by adapter stopping to poll
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.


This table lists the enhancements and fixes in interim fix version 7.0.0.1_IF08.
Enhancements
#CRAPARTitleDetails
There are no enhancements in this interim fix.
Fixes
#CRAPARTitleDetails
1Include AFC IFix 7004_IF07
Symptom: Include AFC IFix 7004_IF07
Resolution: Include AFC IFix 7004_IF07


This table lists the enhancements and fixes in interim fix version 7.0.0.1_IF07.
Enhancements
#CRAPARTitleDetails
There are no enhancements in this interim fix.
Fixes
#CRAPARTitleDetails
1103618Message flow hangs when the message flow is stopped during polling
Symptom: During Inbound polling on WebSphere Message Broker, there is a thread deadlock situation encountered if the message flow is stopped during the processing of an event.
Resolution: The timer mechanism used to schedule the polling thread leads to deadlock situation. The polling mechanism on WMB is now handled by using the work manager to manage and execute the polling thread.


This table lists the enhancements and fixes in interim fix version 7.0.0.1_IF06.
Enhancements
#CRAPARTitleDetails
There are no enhancements in this interim fix.
Fixes
#CRAPARTitleDetails
1103506JR39784Cause missing values for "delta", "version" and "locale"
Symptom: When migrating an ICS project to the JCA adapter, there may exist "delta", "version" and "locale" properties used by ICS. The three properties are not used in JCA adapter, so they are not required.
Resolution: Change logic to ignore the three attributes in business object.


This table lists the enhancements and fixes in interim fix version 7.0.0.1_IF05.
Enhancements
#CRAPARTitleDetails
There are no enhancements in this interim fix.
Fixes
#CRAPARTitleDetails
1JR39773Inbound polling fails on WebSphere Message Broker (WMB) throwing java.lang.UnsupportedOperationException
Symptom: Adapter fails during startup of the Inbound polling on WebSphere Message Broker. Adapter throws java.lang.UnsupportedOperationException will be thrown during the call to BootStrapContext.createTimer()
Resolution: WMB currently does not return a timer in createTimer() call. The issue has been resolved by handling the exception at the adapter end and creating a Timer instance to handle the inbound polling.


This table lists the enhancements and fixes in interim fix version 7.0.0.1_IF04.
Enhancements
#CRAPARTitleDetails
There are no enhancements in this interim fix.
Fixes
#CRAPARTitleDetails
1102658JR38506JDE Adapter does not acknowledge and delete some events from Event Store.
Symptom: JDE adapter does not acknowledge and delete processed event from event store on adapter restart.
Resolution: Acknowledge and delete processed event from event store on adapter restart.


This table lists the enhancements and fixes in interim fix version 7.0.0.1_IF03.
Enhancements
#CRAPARTitleDetails
1093352Support the broker WMB.
Symptom: To support outbound and inbound interaction on broker WMB.
Resolution: Support the broker WMB by masking some EMD properties not applicable for WMB.
Fixes
#CRAPARTitleDetails
1102125"Folder of failed events" will lead some security risk, and mistake.
Symptom: "Folder of failed events",the whole BO schema and data will be put into the folder. This assumes application having privilege to read and write local file of the broker. This has security risks.
Resolution: Remove the "Folder of failed events", and save the event data to the Event Data column of the persistent event store.
2102075Hide or remove the Timeout and MaxRecord properties when no XML List BO is selected.
Symptom: Timeout and MaxRecord are interaction specification properties only valid for XML List RetrieveAll operations. However they are shown when no XML List BO is selected.
Resolution: Hide or remove the Timeout and MaxRecord properties when no XML List BO is selected.


This table lists the enhancements and fixes in interim fix version 7.0.0.1_IF01.
Enhancements
#CRAPARTitleDetails
There are no enhancements in this interim fix.
Fixes
#CRAPARTitleDetails
1101554JR37204JDEDWARDS ADAPTER DOES NOT SUPPORT A CONTAINER TYPE REAL-TIME EVENT WITH ONLY ONE CHILD.
Symptom: JDEDWARDS ADAPTER DOES NOT SUPPORT A CONTAINER TYPE REAL-TIME EVENT WITH ONLY ONE CHILD.
Resolution: Modify the logic to support a container type Real-Time event with only one child


This table lists the enhancements and fixes in fix pack version 7.0.0.1.
Enhancements
#CRAPARTitleDetails
There are no enhancements in this fix pack.
Fixes
#CRAPARTitleDetails
1100356When adapter creates 2 or more different modules with BO having same name but different namespace and structure, inbound and outbound operations of those modules will throw NullPointerException.
Symptom: When adapter creates 2 or more different modules with BO having same name but different namespace and structure, inbound and outbound operations of those modules will throw NullPointerException.
Resolution: Redefined the methods of "hashCode()" and "equals()" in the SDOV1Type class. Then individual adapter can distinguish those BO correctly by "namespace + name" if those BOs name are equal.
2100406For Adapter inbound and outbound operation(standalone deployment), after the application is restarted, the NullPointerException will appear when the adapter tries to query the ASI Infor from cache.
Symptom: For Adapter inbound and outbound operation(standalone deployment), after the application is restarted, the NullPointerException will appear when the adapter tries to query the ASI Infor from cache.
Resolution: The BO's namespace and name has been preserved as BO instance's fields. After the application is restarted, adapter can still get them from those instance's field rather than the stale data cache.
3100430When adapter caches some BeanTypes that have a great deal of properties, java OutOfMemmory Exception be thrown during performing inbound and outbound operation with some events (persisting 20-50 times in WAS broker).
Symptom: When adapter caches some BeanTypes that have a great deal of properties, java OutOfMemmory Exception be thrown during performing inbound and outbound operation with some events (persisting 20-50 times in WAS broker).
Resolution: The BeanType's class names are preserved as key of cache, rather than BeanType's instance. When broker is WAS, adapter can get BeanType structure referred to its class name.
499888When adapter gets ARM transaction factory name to process ARM transaction, a WAS internal private API is used for it, which need to be replaced with public interfaces.
Symptom: When adapter gets ARM transaction factory name to process ARM transaction, a WAS internal private API is used for it, which need to be replaced with public interfaces.
Resolution: Switched to Invoke PmiRmJmxService MBean, a set of public interfaces exposed by WAS to get ARM transaction fatory name.
5100262Ambiguous semantics of the max connection number in the event delivery config
Symptom: Adapter will not use connection pool for event delivery if max connection number is 1 and delivery mode is "UNORDERED". In this situation, multiple thread will share one connection without thread safe mechanism, which will cause exception.
Resolution: The fix makes connection pool be used when max connection number is 1, connection pool keep thread safe and thus is recommended to use under "UNORDERED" and "ORDERED BY KEY" delivery mode; If user preferred not to use connection pool, he/she could set max connection number to 0, while thread safe will not be guaranteed.
677930Printing out the AdapterFoundationClasses version in the Logs/traces.
Symptom: Currently with all the adapters , The AFC version is not printed out in the logs/traces. It would be really helpful to have this information printed out to the logs/traces especially in debugging issues due to conflicting AFC being loaded at runtime.
Resolution: print AFC version in the trace


This table lists new and modified connector properties
#VersionAdded or ModifiedPropertyLocation
No connector properties were introduced or modified for this version of the interim fix.


To upgrade to the interim fix version 7.0.0.1_IF09, do the following.
1. Ensure that you have followed the "Installation Instructions" section in the download link before proceeding.
2. If you need to use the fix pack for EMD, delete the connector project in WebSphere Integration Developer (WID), import the new RAR file, and apply the enterprise information system (EIS) specific dependency files.
   a. Open the Java build path for the SCA module and remove the Connector project that is selected on Projects tab.
   b. Open the dependency editor and remove the connector project.
   c. Delete the connector project from the workspace.
   d. Import the new RAR file. Add any dependency files from EIS specific application-specific information as needed.
   e. Open the Java build path for the SCA module and select the Connector project that is selected on the Projects tab.
   f. Open the dependency editor and add the connector project if it is not already present.
3. If you need to update deployed applications using embedded adapter on WebSphere Process Server (WPS) or WebSphere Enterprise Service Bus (ESB), do the following:
   a. Select Update for the corresponding application on the WPS or ESB administrative console.
   b. Select Single Module with a relative path as name of the RAR file - CWYBC_JDE.rar.
   c. Click Browse on the 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, for example, are not changed and that only JAR files will be updated.
4. If you need to update deployed applications using stand-alone adapter on WPS or ESB, do the following:
   a. Stop all deployed applications using the stand-alone adapter on the WPS or ESB administrative console.
   b. Re-deploy the stand-alone resource adapter with the new RAR.
   c. Re-deploy all the applications using stand-alone adapter.


May 17, 2012 6:00 PM
(C) Copyright 2011 IBM Corporation