On Mar 22, 2009, at 10:24 AM, David Jencks wrote:


On Mar 22, 2009, at 3:27 AM, Ashish Jain wrote:

Hi All,
On startup of the server there are few message which are logged in server.log 2009-03-22 15:20:15,718 INFO [startup] Assembling app: C:\.m2\org \apache\geronimo\plugins\geronimo-mejb\2.1.4\geronimo-mejb-2.1.4.jar 2009-03-22 15:20:16,093 INFO [startup] Jndi(name=ejb/mgmt/MEJB) -- > Ejb(deployment-id=mejb/ejb/mgmt/MEJB) 2009-03-22 15:20:16,093 INFO [startup] Created Ejb(deployment- id=mejb/ejb/mgmt/MEJB, ejb-name=ejb/mgmt/MEJB, container=Default Stateless Container) 2009-03-22 15:20:16,109 INFO [startup] Deployed Application(path=C: \.m2\org\apache\geronimo\plugins\geronimo-mejb\2.1.4\geronimo- mejb-2.1.4.jar) 2009-03-22 15:20:17,218 INFO [KernelContextGBean] bound gbean org.apache.geronimo.plugins/agent-ds/2.1.4/car? J2EEApplication=null,JCAConnectionFactory=jdbc/ ActiveDS,JCAResource=org.apache.geronimo.plugins/agent-ds/2.1.4/ car,ResourceAdapter=org.apache.geronimo.plugins/agent-ds/2.1.4/ car,ResourceAdapterModule=org.apache.geronimo.plugins/agent-ds/ 2.1.4/car,j2eeType=JCAManagedConnectionFactory,name=jdbc/ActiveDS at name org.apache.geronimo.plugins/agent-ds/ JCAManagedConnectionFactory/jdbc/ActiveDS 2009-03-22 15:20:17,218 INFO [KernelContextGBean] bound gbean org.apache.geronimo.plugins/agent-ds/2.1.4/car? J2EEApplication=null,JCAConnectionFactory=jdbc/ ArchiveDS,JCAResource=org.apache.geronimo.plugins/agent-ds/2.1.4/ car,ResourceAdapter=org.apache.geronimo.plugins/agent-ds/2.1.4/ car,ResourceAdapterModule=org.apache.geronimo.plugins/agent-ds/ 2.1.4/car,j2eeType=JCAManagedConnectionFactory,name=jdbc/ArchiveDS at name org.apache.geronimo.plugins/agent-ds/ JCAManagedConnectionFactory/jdbc/ArchiveDS 2009-03-22 15:20:17,875 INFO [startup] Assembling app: C:\.m2\org \apache\geronimo\plugins\monitoring\agent-ejb\2.1.4\agent- ejb-2.1.4.jar 2009-03-22 15:20:17,921 INFO [startup] Jndi(name=ejb/mgmt/ MRCLocal) --> Ejb(deployment-id=agent/ejb/mgmt/MRC) 2009-03-22 15:20:17,921 INFO [startup] Jndi(name=ejb/mgmt/ MRCRemote) --> Ejb(deployment-id=agent/ejb/mgmt/MRC) 2009-03-22 15:20:17,953 INFO [startup] Created Ejb(deployment- id=agent/ejb/mgmt/MRC, ejb-name=ejb/mgmt/MRC, container=Default Stateless Container) 2009-03-22 15:20:17,953 INFO [startup] Deployed Application(path=C: \.m2\org\apache\geronimo\plugins\monitoring\agent-ejb\2.1.4\agent- ejb-2.1.4.jar)

Are these path virtual? What do they signify?
They indicate what jndi name the mentioned component is bound under. Unfortunately they don't indicate the jndi namespace.

The datasources end up at
jca:/ org.apache.geronimo.plugins/agent-ds/ JCAManagedConnectionFactory/jdbc/ActiveDS jca:/org.apache.geronimo.plugins/agent-ds/ JCAManagedConnectionFactory/jdbc/ArchiveDS

I'm not 100% sure where the ejbs are bound. I think there are some problems there.

These are the JNDI names for EJBs that remote clients use.



In 2.1.4-snapshot they aren't visible in the console's jndi viewer. I think that means they are bound in an openejb specific jndi context. I would prefer that we arrange for them to be bound in something federated into our xbean-naming tree.

In trunk (at least my copy) things seem even worse: I get an exception like this opening the jndi viewer page:

2009-03-22 10:13:45,226 WARN  [JNDIViewPortlet] Error listing context
org.apache.openejb.OpenEJBException: Error copying object into local class loader: org.apache.openejb.core.ivm.IntraVmProxy in classloader org.apache.geronimo.plugins/debugviews-console-jetty/2.2- SNAPSHOT/car at org .apache .openejb.core.ivm.naming.NamingException.<init>(NamingException.java: 29) at org .apache .openejb .core .ivm .naming .CrossClassLoaderJndiReference .getObject(CrossClassLoaderJndiReference.java:38) at org .apache .openejb .assembler.classic.LazyEjbReference.getObject(LazyEjbReference.java: 91) at org .apache.openejb.core.ivm.naming.Reference.getContent(Reference.java: 40) at org.apache.xbean.naming.context.ContextUtil.resolve(ContextUtil.java: 61) at org .apache .xbean.naming.context.AbstractContext.lookup(AbstractContext.java:122) at org .apache .xbean.naming.context.AbstractContext.lookup(AbstractContext.java:611) at org .apache .geronimo .console .jndiview.JNDIViewPortlet.buildContextSub(JNDIViewPortlet.java:351) at org .apache .geronimo .console .jndiview.JNDIViewPortlet.buildContextSub(JNDIViewPortlet.java:353)
<big snip>
Caused by: java.lang.ClassNotFoundException: org.apache.openejb.core.ivm.IntraVmProxy in classloader org.apache.geronimo.plugins/debugviews-console-jetty/2.2-SNAPSHOT/car at org .apache .geronimo .kernel .config .MultiParentClassLoader .loadOptimizedClass(MultiParentClassLoader.java:401) at org .apache .geronimo .kernel .config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java: 243)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org .apache .openejb .core .ivm .EjbObjectInputStream.resolveProxyClass(EjbObjectInputStream.java:55) at java.io.ObjectInputStream.readProxyDesc(ObjectInputStream.java:1531) at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1493) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java: 1732) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) at org .apache .openejb .core .ivm .naming .CrossClassLoaderJndiReference .copy(CrossClassLoaderJndiReference.java:53) at org .apache .openejb .core .ivm .naming .CrossClassLoaderJndiReference .getObject(CrossClassLoaderJndiReference.java:36)
        ... 115 more

Of course we might just be suppressing the exception in 2.1.4 and having the same problem and the context is in fact federated...

Seems it might be better to list the names rather than the names and values. I don't know how this ever worked as the console's classloader sort of prevent it from being a real EJB client -- at least it would seem that way from the stack trace.

-David

Reply via email to