You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by to...@abilsoft.com on 2004/08/11 05:44:54 UTC
JSP Precompilation with Tomcat 5
I have been trying to resolve a frustration JSP precompilation
problem with Tomcat 5. I had everythng working in prior Tomcat
releases but ever since the upgrade to 5 I am getting the
following error when I try to precompile my JSPs.
BUILD FAILED
java.lang.IncompatibleClassChangeError: Implementing class
java.lang.IncompatibleClassChangeError: Implementing class
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
at
org.apache.tools.ant.loader.AntClassLoader2.defineClassFromData(AntClassLoader2.java:76)
at
org.apache.tools.ant.AntClassLoader.getClassFromStream(AntClassLoader.java:1073)
at
org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1137)
at
org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1090)
at
org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:960)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at
java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:219)
at
org.apache.tools.ant.taskdefs.Definer.addDefinition(Definer.java:457)
at
org.apache.tools.ant.taskdefs.Definer.execute(Definer.java:183)
at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
at org.apache.tools.ant.Task.perform(Task.java:364)
at org.apache.tools.ant.Target.execute(Target.java:341)
at org.apache.tools.ant.Target.performTasks(Target.java:369)
at
org.apache.tools.ant.Project.executeTarget(Project.java:1214)
at
org.apache.tools.ant.Project.executeTargets(Project.java:1062)
at org.apache.tools.ant.Main.runBuild(Main.java:673)
at org.apache.tools.ant.Main.startAnt(Main.java:188)
at
org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
at
org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)
Here is the excerpt from my build.xml
<target name="jspc" depends="prepare, compile"
description="prepares JSP source files">
<!-- <echoproperties/> -->
<echo message="About to define JspC task"/>
<taskdef classname="org.apache.jasper.JspC" name="jasper2">
<!--
-->
<classpath id="jspc.classpath">
<pathelement path="${env.JAVA_HOME}/lib/tools.jar"/>
<fileset dir="${env.CATALINA_HOME}">
<include name="jasper-compiler.jar"/>
</fileset>
<pathelement path="${srcDir}/WEB-INF/lib/taglibs.jar"/>
</classpath>
</taskdef>
<echo message="after JspC task defintion"/>
<echo message="About to invoke jasper2"/>
<jasper2
validateXml="false"
uriroot="${srcDir}"
webXmlFramgment="${srcDir}/WEB-INF/generated_web.xml"
outputDir="${jspDir}"/>
</target>
<target name="jspCompile" depends="jspc"
description="compiles JSP source files">
<javac srcdir="${jspDir}" destdir="${srcDir}/WEB-INF/classes"
classpathref="classpath"/>
</target>
I would greatly appreciate any and all help in resolving this
issue as I am at my wits end and out of ideas to try.
Thanks in advance!
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org
Re: JSP Precompilation with Tomcat 5
Posted by QM <qm...@brandxdev.net>.
On Tue, Aug 10, 2004 at 11:44:54PM -0400, tomcat@abilsoft.com wrote:
: BUILD FAILED
: java.lang.IncompatibleClassChangeError: Implementing class
Given the definition of IncompatibleClassChangeError[1], it sounds like
you have a rogue JAR or classfile somewhere in the classpath. If you're
upgrading from Tomcat 4 -> 5 beware of lingering v4 code.
Check the various "endorsed" dirs, as people sometimes put JARs there
out of desperation and then forget about them.
Also, this looks odd:
: <classpath id="jspc.classpath">
: <pathelement path="${env.JAVA_HOME}/lib/tools.jar"/>
I don't know whether it's "wrong," just that my precompilation works
without it. =)
: <fileset dir="${env.CATALINA_HOME}">
: <include name="jasper-compiler.jar"/>
: </fileset>
Wouldn't this be "common/lib/jasper-compiler.jar" ?
-and wouldn't you also need servlet-api.jar and jsp-api.jar?
-QM
[1] = http://java.sun.com/j2se/1.4.2/docs/api/java/lang/IncompatibleClassChangeError.html
Thrown when an incompatible class change has occurred to some class
definition. The definition of some class, on which the currently
executing method depends, has since changed.
--
software -- http://www.brandxdev.net
tech news -- http://www.RoarNetworX.com
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org