Hi Luan,
I am getting "com.tiscon.bpm.connector.staffware.ConnectionFactory" object from jndi instead of "BPMConnectionFactory" object and due to which i am getting
cast error.
If you see the ejb-jar.xml,i have pasted above has entry for resource type , which is "com.tiscon.bpm.connector.BPMConnectionFactory" ,but the jboss is
returning "com.tiscon.bpm.connector.staffware.ConnectionFactory" object. The class "com.tiscon.bpm.connector.staffware.ConnectionFactory" is implementing
"com.tiscon.bpm.connector.BPMConnectionFactory" interface.
The same code is running properly in weblogic server and the server is returning the "BPMConnectionFactory" object. This is the only exception i am getting
in the jboss log file.
If jboss is not able to return the "BPMConnectionFactory" object ,then how it is returning proxy of another class (i.e
com.tiscon.bpm.connector.staffware.ConnectionFactory).
The actual lookup code is mentioned below:
private BPMConnectionFactory connectionFactory;
Context context = new InitialContext();
connectionFactory = (BPMConnectionFactory) context.lookup("java:/fec/StaffwareProcessSuite");
Also i have tried with below code when i am getting the ConnectionFactory object using lookup
private ConnectionFactory connectionFactory;
Context context = new InitialContext();
connectionFactory = (ConnectionFactory) context.lookup("java:/fec/StaffwareProcessSuite");
The exception i am getting in jboss console for above lookup code is mentioned below.::
20:04:35,200 INFO [com.tiscon.bpm.connector.BPMConnectionFacadeBean] (http-127.0.0.1/127.0.0.1:8080-1) ::::::::========bpmConnection======== after lookup
com.tiscon.bpm.connector.staffware.ConnectionFactory@74a83c5d
20:04:35,202 ERROR [org.jboss.as.ejb3.invocation] (http-127.0.0.1/127.0.0.1:8080-1) JBAS014134:
EJB Invocation failed on component BPMConnectionFacade for
method public abstract com.tiscon.bpm.connector.BPMWorkItem[] com.tiscon.bpm.connector.BPMConnectionFacade.loadWorkItems
(java.lang.String,java.lang.String,java.lang.String) throws
javax.resource.ResourceException,com.tiscon.bpm.connector.BPMConnectorException,com.tiscon.bpm.connector.BPMException,java.rmi.RemoteException:
javax.ejb.EJBException: javax.ejb.EJBException: java.lang.RuntimeException: java.lang.LinkageError: loader constraint violation: when resolving method
"com.tiscon.bpm.connector.staffware.ConnectionFactory.getConnection(Ljava/lang/String;Ljava/lang/String;)Lcom/tiscon/bpm/connector/BPMConnection;" the class
loader (instance of org/jboss/modules/ModuleClassLoader) of the current class, com/tiscon/bpm/connector/BPMConnectionFacadeBean, and the class loader
(instance of org/jboss/modules/ModuleClassLoader) for resolved class, com/tiscon/bpm/connector/staffware/ConnectionFactory, have different Class objects for
the type com/tiscon/bpm/connector/BPMConnection used in the signature
at org.jboss.as.ejb3.tx.CMTTxInterceptor.notSupported(CMTTxInterceptor.java:280) [jboss-as-ejb3-7.1.3.Final-redhat-4.jar:7.1.3.Final-redhat-
4]
at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:186) [jboss-as-ejb3-7.1.3.Final-redhat-4.jar:7.1.3.Final-
redhat-4]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final-redhat-2.jar:1.1.1.Final-
redhat-2]
at org.jboss.as.ejb3.remote.EJBRemoteTransactionPropagatingInterceptor.processInvocation(EJBRemoteTransactionPropagatingInterceptor.java:79)
[jboss-as-ejb3-7.1.3.Final-redhat-4.jar:7.1.3.Final-redhat-4]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final-redhat-2.jar:1.1.1.Final-
redhat-2]
at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation
(CurrentInvocationContextInterceptor.java:41) [jboss-as-ejb3-7.1.3.Final-redhat-4.jar:7.1.3.Final-redhat-4]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final-redhat-2.jar:1.1.1.Final-
redhat-2]
at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:42) [jboss-as-
ejb3-7.1.3.Final-redhat-4.jar:7.1.3.Final-redhat-4]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final-redhat-2.jar:1.1.1.Final-
redhat-2]
at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:59) [jboss-as-ejb3-7.1.3.Final-
redhat-4.jar:7.1.3.Final-redhat-4]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final-redhat-2.jar:1.1.1.Final-
redhat-2]
at org.jboss.as.ejb3.component.interceptors.EjbExceptionTransformingInterceptorFactories$1.processInvocation
(EjbExceptionTransformingInterceptorFactories.java:65) [jboss-as-ejb3-7.1.3.Final-redhat-4.jar:7.1.3.Final-redhat-4]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final-redhat-2.jar:1.1.1.Final-
redhat-2]
at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50) [jboss-as-ee-7.1.3.Final-
redhat-4.jar:7.1.3.Final-redhat-4]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final-redhat-2.jar:1.1.1.Final-
redhat-2]
at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:32) [jboss-as-ejb3-
7.1.3.Final-redhat-4.jar:7.1.3.Final-redhat-4]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final-redhat-2.jar:1.1.1.Final-
redhat-2]
at org.jboss.as.ee.component.TCCLInterceptor.processInvocation(TCCLInterceptor.java:45) [jboss-as-ee-7.1.3.Final-redhat-4.jar:7.1.3.Final-
redhat-4]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.1.Final-redhat-2.jar:1.1.1.Final-
redhat-2]
at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) [jboss-invocation-1.1.1.Final-redhat-
2.jar:1.1.1.Final-redhat-2]
at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:165) [jboss-as-ee-7.1.3.Final-redhat-4.jar:7.1.3.Final-redhat-4]
at org.jboss.as.ejb3.remote.LocalEjbReceiver.processInvocation(LocalEjbReceiver.java:221) [jboss-as-ejb3-7.1.3.Final-redhat-
4.jar:7.1.3.Final-redhat-4]
at org.jboss.ejb.client.EJBClientInvocationContext.sendRequest(EJBClientInvocationContext.java:181) [jboss-ejb-client-1.0.11.Final-redhat-
1.jar:1.0.11.Final-redhat-1]
at org.jboss.ejb.client.TransactionInterceptor.handleInvocation(TransactionInterceptor.java:42) [jboss-ejb-client-1.0.11.Final-redhat-
1.jar:1.0.11.Final-redhat-1]
at org.jboss.ejb.client.EJBClientInvocationContext.sendRequest(EJBClientInvocationContext.java:183) [jboss-ejb-client-1.0.11.Final-redhat-
1.jar:1.0.11.Final-redhat-1]
at org.jboss.ejb.client.ReceiverInterceptor.handleInvocation(ReceiverInterceptor.java:125) [jboss-ejb-client-1.0.11.Final-redhat-
1.jar:1.0.11.Final-redhat-1]
at org.jboss.ejb.client.EJBClientInvocationContext.sendRequest(EJBClientInvocationContext.java:183) [jboss-ejb-client-1.0.11.Final-redhat-
1.jar:1.0.11.Final-redhat-1]
at org.jboss.ejb.client.EJBInvocationHandler.doInvoke(EJBInvocationHandler.java:136) [jboss-ejb-client-1.0.11.Final-redhat-
1.jar:1.0.11.Final-redhat-1]
at org.jboss.ejb.client.EJBInvocationHandler.doInvoke(EJBInvocationHandler.java:121) [jboss-ejb-client-1.0.11.Final-redhat-
1.jar:1.0.11.Final-redhat-1]
at org.jboss.ejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:104) [jboss-ejb-client-1.0.11.Final-redhat-1.jar:1.0.11.Final-
redhat-1]
at com.sun.proxy.$Proxy37.loadWorkItems(Unknown Source)
at com.tiscon.bpm.clusterbridge.BPMClusterBridgeBean.loadWorkItems(BPMClusterBridgeBean.java:240)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.6.0_45]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [rt.jar:1.6.0_45]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [rt.jar:1.6.0_45]
at java.lang.reflect.Method.invoke(Method.java:597) [rt.jar:1.6.0_45]
at org.jboss.as.ee.component.ManagedReferenceMethodInterceptorFactory$ManagedReferenceMethodInterceptor.processInvocation
(ManagedReferenceMethodInterceptorFactory.java:72) [jboss-as-ee-7.1.3.Final-redhat-4.jar:7.1.3.Final-redhat-4]
I have seen the log file , which contains only the cast exception which is caused by the jboss server returning the wrong object.
I am not able to find out any configuration mistake that i have made so that the jboss is returning wrong object or is there any class loading issue?
Already pasted ra.xml and ironjacamar.xml above.
Regards
Sanjeev Kumar Mandal.