Hi - I solved the issue by changing the satic variable to be non-static. See
details below. You may want to do some testing on that configuration.


 >
>
> you can set the log level in loggins.properties to DEBUG for example.
>

OK thanks. I did that but did not find more information in the DEBUG
messages. I finally recompiled the geronimo "xbean" libray from the sources
and added some log statements inside to get the full stacktrace :

java.lang.NoClassDefFoundError: LLogger;
        at java.lang.Class.getDeclaredFields0(Native Method)
        at java.lang.Class.privateGetDeclaredFields(Class.java:2291)
        at java.lang.Class.getDeclaredFields(Class.java:1743)
        at org.apache.xbean.finder.ClassFinder.<init>(ClassFinder.java:157)
        at
org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.createInheritedClassFinder(AnnotationDeployer.java:3240)
        at
org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.deploy(AnnotationDeployer.java:1028)
        at
org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:206)


openejb create a temp class loader to avoid jar  loacking (in particular for
> window$). If you playing with classloading you can have some surprises,
> maybe you could desactivate it. I think there is a antiJarLocking parameter
> you can give to your context.
>
>
I am running on Linux so I don't think jar locking is an issue here. I tried
to set that to false in the context.xml file and saw no difference.

OK So are some details on my setup :

   1. The class in the original error message (Could not fully load class:
   com.mondeca.portal.workingcontext.server.WorkingContextServiceImpl) is a
   servlet declared in web.xml
   2. This class is inside jar file A in WEB-INF/lib/A.jar
   3. This class references another class "com.mondeca.Logger" in a STATIC
   variable (very important). This is the second class in the error message :
   "java.lang.NoClassDefFoundError: LLogger;"
   4. This other class is in another jar B in WEb-INF/lib/B.jar
   5. A.jar contains classpath attribute inside its META-INF/MANIFEST.MF
   file (coming from previous ear packing) referencing "B.jar"

If I change the variable to be a non-static variable, the error disappear.

Thomas



-- 
*Thomas Francart*
*CTO** - Mondeca*
3, cité Nollez 75018 Paris France
Tel. +33 (0)1 44 92 35 04 - fax +33 (0)1 44 92 02 59
Web: www.mondeca.com
Blog : Leçons de choses <http://mondeca.wordpress.com>

Reply via email to