I'm using the JspC task in ant to precompile my jsps and for some reason it fails with a ClassNotFoundException on the first run but succeeds on the second. Does anyone know why or how I can resole the issue?
I'm using tomcat 4.1.24 and here's the section in my build.xml that is failing: <taskdef classname="org.apache.jasper.JspC" name="jspc2"> <classpath id="jspc.classpath"> <pathelement location="${java.home}/../lib/tools.jar"/> <fileset dir="${tomcat.dir}/server/lib"> <include name="*.jar"/> </fileset> <fileset dir="${tomcat.dir}/common/lib"> <include name="*.jar"/> </fileset> </classpath> </taskdef> <jspc2 uriroot="${dist.dir}/webapp" webXmlFragment="${build.dir}/WEB-INF/generated_web.xml" outputDir="${build.dir}/WEB-INF/src"/> And here's the exception: jspc: [jspc2] Jul 2, 2003 12:14:17 PM org.apache.struts.util.MessageResourcesFactory createFactory [jspc2] SEVERE: MessageResourcesFactory.createFactory [jspc2] java.lang.ClassNotFoundException: org.apache.struts.util.PropertyMessageResourcesFactory [jspc2] at org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.jav a:1076) [jspc2] at org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1037) [jspc2] at org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:926) [jspc2] at java.lang.ClassLoader.loadClass(ClassLoader.java:255) [jspc2] at org.apache.struts.util.RequestUtils.applicationClass(RequestUtils.java:182) [jspc2] at org.apache.struts.util.MessageResourcesFactory.createFactory(MessageResource sFactory.java:192) [jspc2] at org.apache.struts.util.MessageResources.getMessageResources(MessageResources .java:576) [jspc2] at org.apache.struts.util.RequestUtils.<clinit>(RequestUtils.java:138) [jspc2] at org.apache.struts.util.MessageResourcesFactory.createFactory(MessageResource sFactory.java:192) [jspc2] at org.apache.struts.util.MessageResources.getMessageResources(MessageResources .java:576) [jspc2] at org.apache.struts.taglib.html.BaseHandlerTag.<clinit>(BaseHandlerTag.java:10 6) [jspc2] at java.lang.Class.forName0(Native Method) [jspc2] at java.lang.Class.forName(Class.java:140) [jspc2] at org.apache.strutsel.taglib.html.ELRewriteTagBeanInfo.class$(ELRewriteTagBean Info.java:91) [jspc2] at org.apache.strutsel.taglib.html.ELRewriteTagBeanInfo.getPropertyDescriptors( ELRewriteTagBeanInfo.java:91) [jspc2] at java.beans.Introspector.getTargetPropertyInfo(Introspector.java:436) [jspc2] at java.beans.Introspector.getBeanInfo(Introspector.java:372) [jspc2] at java.beans.Introspector.getBeanInfo(Introspector.java:144) [jspc2] at org.apache.jasper.compiler.Generator$TagHandlerInfo.<init>(Generator.java:19 46) [jspc2] at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:10 93) [jspc2] at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:707) [jspc2] at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:1028) [jspc2] at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:1070) [jspc2] at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:1076) [jspc2] at org.apache.jasper.compiler.Node$Root.accept(Node.java:232) [jspc2] at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:1028) [jspc2] at org.apache.jasper.compiler.Generator.generate(Generator.java:1917) [jspc2] at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:242) [jspc2] at org.apache.jasper.JspC.processFile(JspC.java:573) [jspc2] at org.apache.jasper.JspC.execute(JspC.java:801) [jspc2] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [jspc2] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39 ) [jspc2] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl .java:25) [jspc2] at java.lang.reflect.Method.invoke(Method.java:324) [jspc2] at org.apache.tools.ant.TaskAdapter.execute(TaskAdapter.java:147) [jspc2] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:166) [jspc2] at org.apache.tools.ant.Task.perform(Task.java:319) [jspc2] at org.apache.tools.ant.Target.execute(Target.java:309) [jspc2] at org.apache.tools.ant.Target.performTasks(Target.java:336) [jspc2] at org.apache.tools.ant.Project.executeTarget(Project.java:1306) [jspc2] at org.apache.tools.ant.Project.executeTargets(Project.java:1250) [jspc2] at org.apache.tools.ant.Main.runBuild(Main.java:610) [jspc2] at org.apache.tools.ant.Main.start(Main.java:196) [jspc2] at org.apache.tools.ant.Main.main(Main.java:235) [jspc2] Jul 2, 2003 12:14:17 PM org.apache.struts.util.MessageResourcesFactory createFactory [jspc2] SEVERE: MessageResourcesFactory.createFactory [jspc2] java.lang.ExceptionInInitializerError [jspc2] at org.apache.struts.util.MessageResourcesFactory.createFactory(MessageResource sFactory.java:192) [jspc2] at org.apache.struts.util.MessageResources.getMessageResources(MessageResources .java:576) [jspc2] at org.apache.struts.taglib.html.BaseHandlerTag.<clinit>(BaseHandlerTag.java:10 6) [jspc2] at java.lang.Class.forName0(Native Method) [jspc2] at java.lang.Class.forName(Class.java:140) [jspc2] at org.apache.strutsel.taglib.html.ELRewriteTagBeanInfo.class$(ELRewriteTagBean Info.java:91) [jspc2] at org.apache.strutsel.taglib.html.ELRewriteTagBeanInfo.getPropertyDescriptors( ELRewriteTagBeanInfo.java:91) [jspc2] at java.beans.Introspector.getTargetPropertyInfo(Introspector.java:436) [jspc2] at java.beans.Introspector.getBeanInfo(Introspector.java:372) [jspc2] at java.beans.Introspector.getBeanInfo(Introspector.java:144) [jspc2] at org.apache.jasper.compiler.Generator$TagHandlerInfo.<init>(Generator.java:19 46) [jspc2] at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:10 93) [jspc2] at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:707) [jspc2] at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:1028) [jspc2] at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:1070) [jspc2] at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:1076) [jspc2] at org.apache.jasper.compiler.Node$Root.accept(Node.java:232) [jspc2] at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:1028) [jspc2] at org.apache.jasper.compiler.Generator.generate(Generator.java:1917) [jspc2] at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:242) [jspc2] at org.apache.jasper.JspC.processFile(JspC.java:573) [jspc2] at org.apache.jasper.JspC.execute(JspC.java:801) [jspc2] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [jspc2] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39 ) [jspc2] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl .java:25) [jspc2] at java.lang.reflect.Method.invoke(Method.java:324) [jspc2] at org.apache.tools.ant.TaskAdapter.execute(TaskAdapter.java:147) [jspc2] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:166) [jspc2] at org.apache.tools.ant.Task.perform(Task.java:319) [jspc2] at org.apache.tools.ant.Target.execute(Target.java:309) [jspc2] at org.apache.tools.ant.Target.performTasks(Target.java:336) [jspc2] at org.apache.tools.ant.Project.executeTarget(Project.java:1306) [jspc2] at org.apache.tools.ant.Project.executeTargets(Project.java:1250) [jspc2] at org.apache.tools.ant.Main.runBuild(Main.java:610) [jspc2] at org.apache.tools.ant.Main.start(Main.java:196) [jspc2] at org.apache.tools.ant.Main.main(Main.java:235) [jspc2] Caused by: java.lang.NullPointerException [jspc2] at org.apache.struts.util.MessageResources.getMessageResources(MessageResources .java:577) [jspc2] at org.apache.struts.util.RequestUtils.<clinit>(RequestUtils.java:138) [jspc2] ... 36 more [jspc2] Error in class org.apache.jasper.JspC BUILD FAILED file:/home/ericn/projects/merchantWeb/build.xml:85: java.lang.ExceptionInInitializerError Any help is appreciated. Eric DISCLAIMER: The information contained in this e-mail is, unless otherwise indicated, confidential and is intended solely for the use of the named addressee. Access, copying or re-use of the e-mail or any information contained therein by any other person is not authorized. If you are not the intended recipient please notify us immediately by returning the e-mail to the originator.