Hello,
We are using WSAD V5.1. Our backend is CICS mainframes. We are making ECIRequest to connect to CICS using api's provided by IBM in jar IBMConnectorCICS304.jar.
When we are making this call from war. It works well.
I have a requirement of picking message from MQ seires and make a call to CICS framework. I have written MDB to pick message from MQ series and then I make ECIRequest in MDB.
I am getting following error:-
[9/3/07 12:52:01:766 EDT] 6e426e42 ExceptionUtil E CNTR0020E: Non-application exception occurred while processing method "onMessage" on bean "BeanId(Dnr#dnrMdb.jar#MQListener, null)". Exception data: java.lang.reflect.InvocationTargetException
Caused by: java.lang.LinkageError: LinkageError while defining class: com.ibm.ctg.client.TcpJavaGateway
Could not be defined due to: LinkageError while defining class: com.ibm.ctg.client.JavaGatewayInterface
Could not be defined due to: (com/ibm/ctg/client/JavaGatewayInterface) abstract method may not be private, static, final, native, synchronized or strict at offset=2669
This is often caused by having a class defined at multiple
locations within the classloader hierarchy. Other potential causes
include compiling against an older or newer version of the class
that has an incompatible method signature.
Dumping the current context classloader hierarchy:
==> indicates defining classloader
==>[0]
com.ibm.ws.classloader.CompoundClassLoader@6c416c41
Local ClassPath: D:\DNR_New\Studio Projects\dnrMdb\ejbModule;D:\DNR_New\Studio Projects\Dnr\tools\extensions\IBMConnectorCICS304.jar;
Delegation Mode: PARENT_FIRST
[1] com.ibm.ws.classloader.ExtJarClassLoader@306844234 Local ClassPath: C:\Program Files\IBM\WebSphere Studio\Application Developer\v5.1.2\runtimes\base_v51\lib\app; Delegation Mode: PARENT_LAST
[2] com.ibm.ws.classloader.ProtectionClassLoader@14ee14ee
[3] com.ibm.ws.bootstrap.ExtClassLoader@59025902
[4] sun.misc.Launcher$AppClassLoader@412c412c
[5] sun.misc.Launcher$ExtClassLoader@64f064f0
---Original exception---
java.lang.ClassFormatError: (com/ibm/ctg/client/JavaGatewayInterface) abstract method may not be private, static, final, native, synchronized or strict at offset=2669
I have tried changing delegation mode to 'PARENT_LAST'. But it didn't work.
For using third party jar I have added it to utility projects in EAR. And then added
Java Jar Dependency in
EJB project.
Still getting the same error.
Any pointers will be very helpful.
Thanks,
Preeti