users@glassfish.java.net

Re: ejb client problem

From: Witold Szczerba <pljosh.mail_at_gmail.com>
Date: Fri, 30 Jan 2009 11:19:47 +0100

Look at the cause:
java.lang.ClassNotFoundException: pl.karolik.michal.klasy.Plik

The class must be on a classpath of both: server and client. When
dealing with remote clients, you should create a separate JAR file
(project) for classes used on both sides. Inside that JAR you can
have:
a) remote interfaces, so EJB and Client can see them,
b) data transfer objects, like pl.karolik.michal.klasy.Plik,
c) maybe some utility stuff you use on both sides, like validators for
example, so you can use them on the client side and on the server side
separately.

Regards,
Witold Szczerba

2009/1/30 <glassfish_at_javadesktop.org>:
> Hi, i wrote ejb application and deployed it on glassfish. One of the methods given to a ejb client return ArrayList with my own object (Plik). Now when I want to call it on ejb client i get errors like:
> javax.ejb.EJBException: nested exception is: java.rmi.RemoteException: CORBA NO_IMPLEMENT 1330446337 Maybe; nested exception is:
> org.omg.CORBA.NO_IMPLEMENT: ----------BEGIN server-side stack trace----------
> org.omg.CORBA.NO_IMPLEMENT: vmcid: OMG minor code: 1 completed: Maybe
> at com.sun.corba.ee.impl.logging.OMGSystemException.missingLocalValueImpl(OMGSystemException.java:2769)
> at com.sun.corba.ee.impl.io.FVDCodeBaseImpl.implementation(FVDCodeBaseImpl.java:118)
> at com.sun.org.omg.SendingContext._CodeBaseImplBase._invoke(_CodeBaseImplBase.java:64)
> at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:687)
> at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:227)
> at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
> at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
> at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
> at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
> at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
> at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
> at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
> at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)
> Caused by: java.lang.ClassNotFoundException: pl.karolik.michal.klasy.Plik (no security manager: RMI class loader disabled)
> at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:375)
> at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:165)
> at java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:620)
> at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:202)
> at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:135)
> at com.sun.corba.ee.impl.util.JDKBridge.loadClassM(JDKBridge.java:202)
> at com.sun.corba.ee.impl.util.JDKBridge.loadClass(JDKBridge.java:99)
> at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.loadClass(Util.java:683)
> at com.sun.corba.ee.impl.util.RepositoryId.getClassFromType(RepositoryId.java:568)
> at com.sun.corba.ee.impl.io.ValueHandlerImpl.getClassFromType(ValueHandlerImpl.java:433)
> at com.sun.corba.ee.impl.io.FVDCodeBaseImpl.implementation(FVDCodeBaseImpl.java:112)
> ... 11 more
>
> and more.
>
> Do i have to add jar with server classes to client? It works like this but i dont know if its best solution. Any ideas?
>
> Thanks in advice,
> -michal
> [Message sent by forum member 'freeq1986' (freeq1986)]
>
> http://forums.java.net/jive/thread.jspa?messageID=329177
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: users-help_at_glassfish.dev.java.net
>
>