Actually after resolved jndi name problem i get one new error that is java.lang.ClassCastException: $Proxy0 cannot be cast to My.DemoHome if anyone have any idea what is this so please give me suitable soluation to resolve that problem.........
atul12345 wrote: > > Dear Sir, > > I am new programmer to Geronimo and EJB which are running on > gentoo. i am createing stateful session bean like that........ > This is remote Interface.......... > package My; > > import java.rmi.*; > > import javax.ejb.*; > > public interface DemoInter extends EJBObject > { > public int add(int a,int b) throws RemoteException; > } > > > This is Home Interface.......... > package My; > > import javax.ejb.*; > import java.rmi.*; > > > > public interface DemoHome extends EJBHome > { > public DemoInter create() throws CreateException,RemoteException; > } > > This is Bean class............ > > package My; > > import java.rmi.*; > > import javax.ejb.*; > > public class DemoBean implements SessionBean > { > public DemoBean() { > // TODO Auto-generated constructor stub > } > public void ejbCreate() > { > System.out.println("ejbCreate()"); > } > > public void ejbRemove() > { > System.out.println("ejbRemove()"); > } > > > public void ejbActivate() > { > System.out.println("ejbActivate()"); > } > > public void ejbPassivate() > { > System.out.println("ejbPassivate()"); > } > > > public void setSessionContext(SessionContext ctx){} > > > public int add(int a,int b) throws RemoteException > { > return (a+b); > } > > } > > > open-ejb.xml is where i specified the jndi name > > <openejb-jar xmlns="http://www.openejb.org/xml/ns/openejb-jar-2.1" > xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.1" > > xmlns:security="http://geronimo.apache.org/xml/ns/security-1.1" > xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.1"> > > <enterprise-beans> > <session> > <ejb-name>Demo</ejb-name> > <jndi-name>org.geronimo.ejbsample.HomeBean</jndi-name> > </session> > </enterprise-beans> > </openejb-jar> > > > > > > > > > and this is my client code........... > > import java.util.*; > import javax.naming.*; > import javax.rmi.*; > import My.*; > > > public class Client { > > /** > * @param args > */ > public static void main(String[] args) { > // TODO Auto-generated method stub > try { > > Properties properties=new Properties(); > properties.setProperty(Context.INITIAL_CONTEXT_FACTORY, > "org.apache.openejb.client.RemoteInitialContextFactory"); > > properties.setProperty(Context.PROVIDER_URL, > "ejbd://localhost:4201" ); > > Context ctx=new InitialContext(properties); > > My.DemoHome > home=(My.DemoHome)ctx.lookup("java:org.geronimo.ejbsample.HomeBean"); > > My.DemoInter object =home.create(); > System.out.println(object.add(12,22)); > > that is my code, everything is ok means deploy successfully but problem is > when i execute client program, that time i get error that is > > javax.naming.NameNotFoundException: org.geronimo.ejbsample.HomeBean does > not exist in the system. Check that the app was successfully deployed. > So if anybody know how to resolve this problem then please give me > suitable suggestion to resolve this problem.. > > -- View this message in context: http://www.nabble.com/how-to-run--Ejb-program-on-geronimo-tp16392851s134p16417878.html Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.