PM86388: A StackOverflowError might occur when generating a J2C bean for IMS inbound connection
Fixes are available
Rational Application Developer for WebSphere Software 9.0
Rational Software Architect 9.0
Rational Software Architect for WebSphere Software 9.0
Rational Application Developer for WebSphere Software Fix Pack 3 (184.108.40.206) for 8.0.4
8.5.5: IBM Integration Designer V8.5 Refresh Pack 5 for Windows
220.127.116.11: IBM Integration Designer V8.5 Refresh Pack 5 for Linux
Closed as program error.
Abstract: Attempts to use the J2C Bean wizard to generate a J2C Bean for IMS inbound connection might result in a StackOverflowError. Problem: This issue only occurs in IBM Integration Developer with the IBM Process Server Test environment installed To reproduce the issue: 1) Open J2EE perspective 2) Click on File -? New 3) On New Wizard, select J2C -? Next 4) Select IMS TM Resource Adapter 12.1.0 -? next 5) Select the connector RAR file, C:\IBM\IntegrationDesigner\v8.0\ResourceAdapters\ims15\imsico121 0.rar 6) Select IBM Process Server 8.0 as the target server -? Next 7) Select Inbound -? Next 8) Specify JNDI name = ims/inboundConnection -? Next 9) The wizard displays Please wait. Initializing the agent. Eventually it will fail with a StackOverFlowError. In the workspace log, you will see the following error: !ENTRY com.ibm.ccl.discovery.ui 4 4 2013-03-15 10:09:08.547 !MESSAGE java.lang.StackOverflowError !STACK 1 com.ibm.adapter.framework.BaseException: at com.ibm.adapter.framework.BaseException.createException(BaseExce ption.ja va:98) at com.ibm.adapter.emd.internal.build.j2c.J2CBuildAgent.initialize( J2CBuild Agent.java:261) at com.ibm.j2c.ui.internal.wizards.J2CWizard_EMDConnectionPage$2.ru n(J2CWiz ard_EMDConnectionPage.java:206) . . .. org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.subTyp eOfType( HierarchyResolver.java:871) at org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.subTyp eOfType( HierarchyResolver.java:871) at org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.subTyp eOfType( HierarchyResolver.java:871) at org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.subTyp eOfType( HierarchyResolver.java:871) . continuing for many lines ... . Local fix: 1) Start the J2C Bean wizard, select, IMS and go to the 'Adapter Style' page where the inbound/outbound choice is presented. 2) Select 'Outbound' and press Next. 3) On the 'Scenario Selection' page, select 'IMS COBOL, PL/I or C-based applications', and press Next. 4) On the 'Connect Properties' page, just press next. 5) Press the 'Back' button three times to get back to the 'Adapter Style' page, then select 'Inbound' and continue on with the flow.
When the J2C wizard is initializing it is attempting to create a type hierarchy of all the classes which implement a specific interface. When BPM runtime is used at author time instead of the WebSphere Application Server runtime, a much larger number of JAR files are added to the classpath. The initial code is using a JDT API which is searching through every JAR file which causes the stack memory allocation to be exceeded, due to the larger number of classes being searched.
Rewrote the code which looks up a type hierarchy to use the Java search engine instead of the JDT utility code. The search engine uses much less memory than the JDT utility as it uses its own internal index searching. The fix for this APAR is included in Rational Application Developer v18.104.22.168.
Reported component name
RATL APP DEV WI
Reported component ID
Last modified date
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fixed component name
RATL APP DEV WI
Fixed component ID
Applicable component levels