Pokušavam koristeći jndi da pozovem local home interface cmp entity bean-a.
Kod je sledeći:
Hashtable ht=new Hashtable();
ht.put(InitialContext.INITIAL_CONTEXT_FACTORY,
"org.jnp.interfaces.NamingContextFactory");
ht.put(InitialContext.PROVIDER_URL,"jnp://localhost:1100");
ht.put(InitialContext.URL_PKG_PREFIXES,
"org.jboss.naming:org.jnp.interfaces");
InitialContext ic = new InitialContext(ht);
if(ic!=null)
System.out.println("success");/*I am getting success as output here*/
Object ds = ic.lookup("jnp://cmp.KarticaLocalHome");
KarticaLocalHome home = (KarticaLocalHome)javax.rmi.PortableRemoteObject.narrow(ds,KarticaLocalHome.class);
Pretpostavljam da grešim što pozivam PortableRemoteObject, ali ne znam šta da radim sa lokalnim interfejsom.
U daljem kodu ja mogu da pozovem metodu home.create(), ali prilikom izvršavanja dobijam sledeću grešku:
log4j:WARN No appenders could be found for logger (org.jnp.interfaces.NamingContext).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" java.lang.ClassCastException
at com.sun.corba.se.impl.javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:229)
at javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:137)
at client.Client.main(Client.java:41)
Caused by: java.lang.ClassCastException: org.jnp.interfaces.NamingContext cannot be cast to org.omg.CORBA.Object
at com.sun.corba.se.impl.javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:212)
... 2 more
success
Java Result: 1
Nadam se da neko može da mi pomogne, jer mislim da nije tako težak problem, ali ja jednostavno ne znam o čemu se radi.
Hvala unapred!