We are trying to lookup for an Local EJB in JBoss7.1, but we get an ClassCast Exception. This local lookup is between the same Server:
java.lang.ClassCastException: org.jboss.ejb.client.naming.ejb.EjbNamingContext cannot be cast to com.transaction.ITransaction
We are doing a lookup for the following JNDI name :
ejb:APP/TransactionBean!com.transaction.TransactionLocal
InitialContext context = new InitialContext();
context.lookup(ejb:APP/TransactionBean!com.transaction.TransactionLocal);
Is there any other configuration missing from our side. I read about ejb-client.properties do we need this file ? or its only for remote lookups?
You don't need ejb: namespace lookup for local EJBs. Use the spec mandated JNDI name scheme (either java:global, java:app, java:module depending on the context from where you want to lookup). The server logs will show what JNDI name to use for the lookup.