Logging has changed from 0.20.3 to 0.20.4. We were able to eliminate the
need for logkit. Instead we use the logger interface from Avalon which
also has a ConsoleLogger which became our new standard logger. I don't
know if you really use the FOPServlet from the distribution, but if you
do, you should also update the servlet when you upgrade FOP (because the
logging has changed). Probably you have the old servlet that still wants
to use a LogKit logger. Look in the contrib/servlet directory in the

The libs you need to run the FOP Servlet are: fop.jar, batik.jar,
avalon-framework*.jar. logkit.jar is not needed anymore.

Look here for details about logging in 0.20.4:

I hope this helps.

On 22.11.2002 22:35:57 Ciot, Thierry wrote:
> I have searched the FAQ and the mail archive but could not find anything
> useful.  
> Thanks in advance for answering this question.
> I am using fop 0.20.4 (fop-0.20.4rc).  I cannot use fop within a servlet.
> I have tested with both tomcat 3.3.1 and Tomcat 4.
> I get the following error message java.lang.NoClassDefFoundError:
> org/apache/log/Hierarchy
> It turns out that the avalon jar file shipped with fop does not contain that
> class.
> I have tracked down Hierarchy to belong to the logkit project.  I downloaded
> logkit 1.1 and put the jar file in the lib directory.  Now I can proceed
> further but it still fails when trying to renderFO with the following error
> message:
> Location: /fop/servlet/fop Internal Servlet
> Error:java.lang.NoSuchMethodError:
> org.apache.fop.apps.Driver.setLogger(Lorg/apache/log/Logger;)V

The method now has the following signature:

That's the reason for the NoSuchMethodError.

> This is probably because the setLogger requires a different method
> parameter.
> What lib do I need to run a fop servlet?
> Thierry.
> Location: /fop/servlet/fop
> Internal Servlet Error:
> java.lang.NoClassDefFoundError: org/apache/log/Hierarchy
>       at FopServlet.doGet(FopServlet.java:53)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java)
> Location: /fop/servlet/fopInternal Servlet
> Error:java.lang.NoSuchMethodError:
> org.apache.fop.apps.Driver.setLogger(Lorg/apache/log/Logger;)V
>       at FopServlet.renderFO(FopServlet.java:94)
>       at FopServlet.doGet(FopServlet.java:64)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java)


Jeremias Maerki

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to