cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefano Mazzocchi <stef...@apache.org>
Subject Re: [bug] linking error
Date Fri, 29 Sep 2000 00:32:55 GMT
"Craig R. McClanahan" wrote:
> 
> Stefano Mazzocchi wrote:
> 
> > "Craig R. McClanahan" wrote:
> >
> > > > However, I agree that shared libraries are badly defined in the W3C/XML
world.
> > > > a) The classes from W3C were never properly packaged and maintained into
JAR
> > > > files. Every user tend to put them into their own JARs
> > > > b) The same classes are not compatible between versions. I can not simply
replace
> > > > them with the latest version (by compiling and putting them in a JAR in
the
> > > > lib/ext/ directory) which would temporarily solve my problems.
> > > >
> > > > But I guess you are on top of this...
> > >
> > > I wouldn't say necessarily "on top of" -- more "suffering the consequences
of" along
> > > with everyone else :-).
> >
> > We appear to suffer more consequences of this than planned.
> >
> > Here is another pretty serious bug report:
> >
> > 1) downloaded Tomcat 4.0M1
> > 2) latest Cocoon2 from CVS
> >
> > when executed (Sun JDK 1.3 under Win2k) I get
> >
> > java.lang.LinkageError: Class org/xml/sax/Attributes violates loader
> > constraints
> >         at
> > _C_._Code._apache_org._jakarta_tomcat_4_0_m1._webapps._cocoon._sitemap_xmap.setConfiguration(_sitemap_xmap.java:480)
> >         at
> > org.apache.cocoon.sitemap.SitemapHandler.run(SitemapHandler.java:149)
> >         at java.lang.Thread.run(Thread.java:479)
> >
> > but if I remove xerces.jar from /lib everything works just fine.
> >
> > NOTE: cocoon/WEB-INF/lib *does* include Xerces_1.2.jar along with the
> > right SAX classes.
> >
> > How about that?
> >
> 
> I was able to reproduce this, but it fails for me under all three circumstances (xerces.jar
in both places, xerces.jar
> in $CATALINA_HOME/lib only, and xerces.jar in the Cocoon WEB-INF/lib only).  In the latter
case, it complained about a
> different class (org.w3c.dom.Document) instead.
> 
> A few comments and questions.
> 
> * According to the Javadocs, a LinkageError means that
>   a class was changed this class depended on, without
>   recompiling this class.  Is there any chance at all that the
>   xerces.jar (from the 1.2 binary download) was not built from
>   scratch (build clean then build dist or whatever)?
> 
> * I turned on debugging output in the Catalina class loader.
>   It appears that the actual generated sitemap class is being
>   started on another thread, using a different classloader.  If
>   so, what class is being used, and how is it being configured?
>   I don't know enough Cocoon internals to track this down.

Oh, shit you're right... didn't think of this...

Giacomo, did you use a different classloader for the compiling thread?
 
> * Likewise, I don't see anywhere in the code that is writing the
>   LinkageError exception message to System.out in the first
>   place.  Any ideas where this is coming from?  (The stack trace
>   sent back to the browser is a NullPointerException).

It's out from the above sitemap compiling thread and the NPE is due to a
bug since the two thread are not well communicating... we need to fix
that soon.

-- 
Stefano Mazzocchi      One must still have chaos in oneself to be
                          able to give birth to a dancing star.
<stefano@apache.org>                             Friedrich Nietzsche
--------------------------------------------------------------------
 Missed us in Orlando? Make it up with ApacheCON Europe in London!
------------------------- http://ApacheCon.Com ---------------------



Mime
View raw message