You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Leon Rosenberg <ro...@googlemail.com> on 2006/04/20 11:37:44 UTC

exception in jspc with 5.5.16

Hi,

in our deployment scripts we precompile jsps for live deployment.
However, we are in the process of switching from 5.0.x to 5.5.16 and
the precompilation fails.
I've searched the net and checked the 5.5 docs but haven't found any hints.

Here's the exception:

frs@build01:~/bin/testsystem$ ant -f build_web.xml
Buildfile: build_web.xml

jsp:
     [echo] /home/frs/test_web_tomcat
     [echo] /usr/local/jdk1.5.0_06_32bit/jre
     [echo] /usr/local/jdk1.5.0_06_32bit/jre
     [echo] Generating java files out of root jsps
  [jasper2] java.lang.IllegalStateException: No Java compiler available
  [jasper2]     at
org.apache.jasper.JspCompilationContext.createCompiler(JspCompilationContext.java:224)
  [jasper2]     at org.apache.jasper.JspC.processFile(JspC.java:979)
  [jasper2]     at org.apache.jasper.JspC.execute(JspC.java:1135)
  [jasper2]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  [jasper2]     at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  [jasper2]     at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  [jasper2]     at java.lang.reflect.Method.invoke(Method.java:585)
  [jasper2]     at
org.apache.tools.ant.TaskAdapter.execute(TaskAdapter.java:123)
  [jasper2]     at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
  [jasper2]     at org.apache.tools.ant.Task.perform(Task.java:364)
  [jasper2]     at org.apache.tools.ant.Target.execute(Target.java:341)
  [jasper2]     at org.apache.tools.ant.Target.performTasks(Target.java:369)
  [jasper2]     at
org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
  [jasper2]     at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
  [jasper2]     at
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
  [jasper2]     at
org.apache.tools.ant.Project.executeTargets(Project.java:1068)
  [jasper2]     at org.apache.tools.ant.Main.runBuild(Main.java:668)
  [jasper2]     at org.apache.tools.ant.Main.startAnt(Main.java:187)
  [jasper2]     at org.apache.tools.ant.launch.Launcher.run(Launcher.java:246)
  [jasper2]     at org.apache.tools.ant.launch.Launcher.main(Launcher.java:67)

BUILD FAILED
/home/frs/bin/testsystem/build_web.xml:41:
org.apache.jasper.JasperException: No Java compiler available


and here's the buildfile:
<project name="datingr4p1" default="jsp" basedir=".">

<property name="tomcat.home" location="/home/frs/test_web_tomcat"/>
<property name="root.classes"
location="${tomcat.home}/work/Catalina/localhost/_/"/>
<property name="root.src" location="${tomcat.home}/webapps/ROOT"/>


<target name="jsp">
    <!--
         The Ant JSPC task doesn't work with Tomcat 5.0
         so in the meantime we need to define our own task.
      -->
    <echo>${tomcat.home}</echo>

    <echo>${java.home}</echo>
    <property name="java.home" location="/usr/local/java"/>
    <echo>${java.home}</echo>
    <taskdef classname="org.apache.jasper.JspC" onerror="report" name="jasper2">
        <classpath id="jspc.classpath">
            <pathelement location="/usr/local/java/lib/tools.jar"/>
            <fileset dir="${tomcat.home}/common/lib">
                <include name="*.jar"/>
            </fileset>
            <fileset dir="${tomcat.home}/bin">
                    <include name="*.jar"/>
            </fileset>
            <fileset dir="${tomcat.home}/server/lib">
                <include name="*.jar"/>
            </fileset>
        </classpath>
    </taskdef>


    <echo>Generating java files out of root jsps</echo>
    <jasper2 outputDir="${root.classes}"
            uriroot="${root.src}"
            verbose="9"
            package="org.apache.jsp"
            compilerSourceVM="1.5"
            compilerTargetVM="1.5"
            validateXml="false">
    </jasper2>

    <echo>Compiling root java files </echo>
    <javac srcdir="${root.classes}"
           destdir="${root.classes}"
           verbose="false"
           debug="true"
           optimize="false"
           includes="**/*.java"
           fork="yes"
           compilerSourceVM="1.5"
           compilerTargetVM="1.5"
           memoryInitialSize="800m"
           memoryMaximumSize="800m"
           >
        <classpath>
                <pathelement location="${java.home}/../lib/tools.jar"/>
                <pathelement
path="${tomcat.home}/webapps/ROOT/WEB-INF/classes"/>
                <fileset dir="${tomcat.home}/common/lib">
                        <include name="*.jar"/>
                </fileset>
                <fileset dir="${tomcat.home}/webapps/ROOT/WEB-INF/lib">
                        <include name="*.jar"/>
                </fileset>
        </classpath>
    </javac>
</target>



</project>

suspicious java.home property seems to point to the jre, whether
system JAVA_HOME variable point to the jdk:
/usr/local/java/ -> jdk1.5.0_06_32bit

I've checked the source code and found that the code in
org.apache.jasper.JspCompilationContext.createCompiler(JspCompilationContext.java:224)
tries to load the JDT or JAVAC compiler by name. Is it a classloading issue?

Thanx in advance

regards
Leon

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: exception in jspc with 5.5.16

Posted by Leon Rosenberg <ro...@googlemail.com>.
Ok, it seems that my mind was rather broken than the jspc. We
reinstalled a clean tomcat copy and now it works.

Sorry for disturbing :-)

regards
Leon



On 4/20/06, Leon Rosenberg <ro...@googlemail.com> wrote:
> I found that same issue was discussed by Allistair and Remy in 2005
> with 5.5.11, and haven't been resolved :
>
> http://mail-archives.apache.org/mod_mbox/tomcat-users/200508.mbox/%3c5684A7E6FB10504393A2806C1F4C0210076CE3A4@orion.qas.com%3e
>
> Seems that jspc is broken?
>
> Leon
>
>
>
> On 4/20/06, Leon Rosenberg <ro...@googlemail.com> wrote:
> > no environment.
> > just calling from bash on a debian machine:
> > $ java -version
> > java version "1.5.0_06"
> > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
> > Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode)
> >
> > $ echo $JAVA_HOME
> > /usr/local/java/
> >
> > which is
> > lrwxr-xr-x   1 root staff   17 Apr  5 13:51 java -> jdk1.5.0_06_32bit
> >
> > Apache Ant version 1.6.5 compiled on June 2 2005
> >
> > Other buildscripts are running well, and the jspc definition is taken
> > from the examples on tomcat's site:
> > http://tomcat.apache.org/tomcat-5.5-doc/jasper-howto.html
> > Web Application Compilation - section
> >
> > regards
> > Leon
> >
> > On 4/20/06, Marc Farrow <ma...@gmail.com> wrote:
> > > What ide are you using?  If you set a property at the start of the build
> > > script that sets java.home to your SDK, then it should use that.  I know in
> > > NetBeans that properties are immutable, so once set they will not be set
> > > again.  I am not sure about other environments, but I would guess this is a
> > > feature of ANT and not the IDE.
> > >
> > > hth
> > >
> > >
> > > On 4/20/06, Leon Rosenberg <ro...@googlemail.com> wrote:
> > > >
> > > > On 4/20/06, Marc Farrow <ma...@gmail.com> wrote:
> > > > > jsp:
> > > > >     [echo] /home/frs/test_web_tomcat
> > > > >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> > > > >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> > > > >     [echo] Generating java files out of root jsps
> > > > > [jasper2] java.lang.IllegalStateException: No Java compiler available
> > > > >
> > > > > This looks like your "compiler" is pointing to a JRE instead of JDK.
> > > > >
> > > >
> > > > Yes, but how?
> > > > The $JAVA_HOME variable is pointing to the jdk, other build scripts
> > > > running fine. The java.home in this special build file seems to point
> > > > into false direction, but I don't know what could twist it?
> > > >
> > > > leon
> > > >
> > > > >
> > > > >
> > > > > On 4/20/06, Leon Rosenberg <ro...@googlemail.com> wrote:
> > > > > >
> > > > > > Hi,
> > > > > >
> > > > > > in our deployment scripts we precompile jsps for live deployment.
> > > > > > However, we are in the process of switching from 5.0.x to 5.5.16 and
> > > > > > the precompilation fails.
> > > > > > I've searched the net and checked the 5.5 docs but haven't found any
> > > > > > hints.
> > > > > >
> > > > > > Here's the exception:
> > > > > >
> > > > > > frs@build01:~/bin/testsystem$ ant -f build_web.xml
> > > > > > Buildfile: build_web.xml
> > > > > >
> > > > > > jsp:
> > > > > >     [echo] /home/frs/test_web_tomcat
> > > > > >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> > > > > >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> > > > > >     [echo] Generating java files out of root jsps
> > > > > > [jasper2] java.lang.IllegalStateException: No Java compiler available
> > > > > > [jasper2]     at
> > > > > > org.apache.jasper.JspCompilationContext.createCompiler(
> > > > > > JspCompilationContext.java:224)
> > > > > > [jasper2]     at org.apache.jasper.JspC.processFile(JspC.java:979)
> > > > > > [jasper2]     at org.apache.jasper.JspC.execute(JspC.java:1135)
> > > > > > [jasper2]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > > > > > Method)
> > > > > > [jasper2]     at
> > > > > > sun.reflect.NativeMethodAccessorImpl.invoke(
> > > > NativeMethodAccessorImpl.java
> > > > > > :39)
> > > > > > [jasper2]     at
> > > > > > sun.reflect.DelegatingMethodAccessorImpl.invoke(
> > > > > > DelegatingMethodAccessorImpl.java:25)
> > > > > > [jasper2]     at java.lang.reflect.Method.invoke(Method.java:585)
> > > > > > [jasper2]     at
> > > > > > org.apache.tools.ant.TaskAdapter.execute(TaskAdapter.java:123)
> > > > > > [jasper2]     at
> > > > > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
> > > > > > [jasper2]     at org.apache.tools.ant.Task.perform(Task.java:364)
> > > > > > [jasper2]     at org.apache.tools.ant.Target.execute(Target.java:341)
> > > > > > [jasper2]     at org.apache.tools.ant.Target.performTasks(Target.java
> > > > :369)
> > > > > > [jasper2]     at
> > > > > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
> > > > > > [jasper2]     at org.apache.tools.ant.Project.executeTarget(
> > > > Project.java
> > > > > > :1185)
> > > > > > [jasper2]     at
> > > > > > org.apache.tools.ant.helper.DefaultExecutor.executeTargets(
> > > > > > DefaultExecutor.java:40)
> > > > > > [jasper2]     at
> > > > > > org.apache.tools.ant.Project.executeTargets(Project.java:1068)
> > > > > > [jasper2]     at org.apache.tools.ant.Main.runBuild(Main.java:668)
> > > > > > [jasper2]     at org.apache.tools.ant.Main.startAnt(Main.java:187)
> > > > > > [jasper2]     at org.apache.tools.ant.launch.Launcher.run(
> > > > Launcher.java
> > > > > > :246)
> > > > > > [jasper2]     at org.apache.tools.ant.launch.Launcher.main(
> > > > Launcher.java
> > > > > > :67)
> > > > > >
> > > > > > BUILD FAILED
> > > > > > /home/frs/bin/testsystem/build_web.xml:41:
> > > > > > org.apache.jasper.JasperException: No Java compiler available
> > > > > >
> > > > > >
> > > > > > and here's the buildfile:
> > > > > > <project name="datingr4p1" default="jsp" basedir=".">
> > > > > >
> > > > > > <property name="tomcat.home" location="/home/frs/test_web_tomcat"/>
> > > > > > <property name="root.classes"
> > > > > > location="${tomcat.home}/work/Catalina/localhost/_/"/>
> > > > > > <property name="root.src" location="${tomcat.home}/webapps/ROOT"/>
> > > > > >
> > > > > >
> > > > > > <target name="jsp">
> > > > > >    <!--
> > > > > >         The Ant JSPC task doesn't work with Tomcat 5.0
> > > > > >         so in the meantime we need to define our own task.
> > > > > >      -->
> > > > > >    <echo>${tomcat.home}</echo>
> > > > > >
> > > > > >    <echo>${java.home}</echo>
> > > > > >    <property name="java.home" location="/usr/local/java"/>
> > > > > >    <echo>${java.home}</echo>
> > > > > >    <taskdef classname="org.apache.jasper.JspC" onerror="report"
> > > > > > name="jasper2">
> > > > > >        <classpath id="jspc.classpath">
> > > > > >            <pathelement location="/usr/local/java/lib/tools.jar"/>
> > > > > >            <fileset dir="${tomcat.home}/common/lib">
> > > > > >                <include name="*.jar"/>
> > > > > >            </fileset>
> > > > > >            <fileset dir="${tomcat.home}/bin">
> > > > > >                    <include name="*.jar"/>
> > > > > >            </fileset>
> > > > > >            <fileset dir="${tomcat.home}/server/lib">
> > > > > >                <include name="*.jar"/>
> > > > > >            </fileset>
> > > > > >        </classpath>
> > > > > >    </taskdef>
> > > > > >
> > > > > >
> > > > > >    <echo>Generating java files out of root jsps</echo>
> > > > > >    <jasper2 outputDir="${root.classes}"
> > > > > >            uriroot="${root.src}"
> > > > > >            verbose="9"
> > > > > >            package="org.apache.jsp"
> > > > > >            compilerSourceVM="1.5"
> > > > > >            compilerTargetVM="1.5"
> > > > > >            validateXml="false">
> > > > > >    </jasper2>
> > > > > >
> > > > > >    <echo>Compiling root java files </echo>
> > > > > >    <javac srcdir="${root.classes}"
> > > > > >           destdir="${root.classes}"
> > > > > >           verbose="false"
> > > > > >           debug="true"
> > > > > >           optimize="false"
> > > > > >           includes="**/*.java"
> > > > > >           fork="yes"
> > > > > >           compilerSourceVM="1.5"
> > > > > >           compilerTargetVM="1.5"
> > > > > >           memoryInitialSize="800m"
> > > > > >           memoryMaximumSize="800m"
> > > > > >           >
> > > > > >        <classpath>
> > > > > >                <pathelement location="${java.home}/../lib/tools.jar"/>
> > > > > >                <pathelement
> > > > > > path="${tomcat.home}/webapps/ROOT/WEB-INF/classes"/>
> > > > > >                <fileset dir="${tomcat.home}/common/lib">
> > > > > >                        <include name="*.jar"/>
> > > > > >                </fileset>
> > > > > >                <fileset dir="${tomcat.home}/webapps/ROOT/WEB-INF/lib">
> > > > > >                        <include name="*.jar"/>
> > > > > >                </fileset>
> > > > > >        </classpath>
> > > > > >    </javac>
> > > > > > </target>
> > > > > >
> > > > > >
> > > > > >
> > > > > > </project>
> > > > > >
> > > > > > suspicious java.home property seems to point to the jre, whether
> > > > > > system JAVA_HOME variable point to the jdk:
> > > > > > /usr/local/java/ -> jdk1.5.0_06_32bit
> > > > > >
> > > > > > I've checked the source code and found that the code in
> > > > > > org.apache.jasper.JspCompilationContext.createCompiler(
> > > > > > JspCompilationContext.java:224)
> > > > > > tries to load the JDT or JAVAC compiler by name. Is it a classloading
> > > > > > issue?
> > > > > >
> > > > > > Thanx in advance
> > > > > >
> > > > > > regards
> > > > > > Leon
> > > > > >
> > > > > > ---------------------------------------------------------------------
> > > > > > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > > > > > For additional commands, e-mail: users-help@tomcat.apache.org
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Marc Farrow
> > > > >
> > > >
> > > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > > > For additional commands, e-mail: users-help@tomcat.apache.org
> > > >
> > > >
> > >
> > >
> > > --
> > > Marc Farrow
> > >
> >
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: exception in jspc with 5.5.16

Posted by Leon Rosenberg <ro...@googlemail.com>.
I found that same issue was discussed by Allistair and Remy in 2005
with 5.5.11, and haven't been resolved :

http://mail-archives.apache.org/mod_mbox/tomcat-users/200508.mbox/%3c5684A7E6FB10504393A2806C1F4C0210076CE3A4@orion.qas.com%3e

Seems that jspc is broken?

Leon



On 4/20/06, Leon Rosenberg <ro...@googlemail.com> wrote:
> no environment.
> just calling from bash on a debian machine:
> $ java -version
> java version "1.5.0_06"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
> Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode)
>
> $ echo $JAVA_HOME
> /usr/local/java/
>
> which is
> lrwxr-xr-x   1 root staff   17 Apr  5 13:51 java -> jdk1.5.0_06_32bit
>
> Apache Ant version 1.6.5 compiled on June 2 2005
>
> Other buildscripts are running well, and the jspc definition is taken
> from the examples on tomcat's site:
> http://tomcat.apache.org/tomcat-5.5-doc/jasper-howto.html
> Web Application Compilation - section
>
> regards
> Leon
>
> On 4/20/06, Marc Farrow <ma...@gmail.com> wrote:
> > What ide are you using?  If you set a property at the start of the build
> > script that sets java.home to your SDK, then it should use that.  I know in
> > NetBeans that properties are immutable, so once set they will not be set
> > again.  I am not sure about other environments, but I would guess this is a
> > feature of ANT and not the IDE.
> >
> > hth
> >
> >
> > On 4/20/06, Leon Rosenberg <ro...@googlemail.com> wrote:
> > >
> > > On 4/20/06, Marc Farrow <ma...@gmail.com> wrote:
> > > > jsp:
> > > >     [echo] /home/frs/test_web_tomcat
> > > >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> > > >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> > > >     [echo] Generating java files out of root jsps
> > > > [jasper2] java.lang.IllegalStateException: No Java compiler available
> > > >
> > > > This looks like your "compiler" is pointing to a JRE instead of JDK.
> > > >
> > >
> > > Yes, but how?
> > > The $JAVA_HOME variable is pointing to the jdk, other build scripts
> > > running fine. The java.home in this special build file seems to point
> > > into false direction, but I don't know what could twist it?
> > >
> > > leon
> > >
> > > >
> > > >
> > > > On 4/20/06, Leon Rosenberg <ro...@googlemail.com> wrote:
> > > > >
> > > > > Hi,
> > > > >
> > > > > in our deployment scripts we precompile jsps for live deployment.
> > > > > However, we are in the process of switching from 5.0.x to 5.5.16 and
> > > > > the precompilation fails.
> > > > > I've searched the net and checked the 5.5 docs but haven't found any
> > > > > hints.
> > > > >
> > > > > Here's the exception:
> > > > >
> > > > > frs@build01:~/bin/testsystem$ ant -f build_web.xml
> > > > > Buildfile: build_web.xml
> > > > >
> > > > > jsp:
> > > > >     [echo] /home/frs/test_web_tomcat
> > > > >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> > > > >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> > > > >     [echo] Generating java files out of root jsps
> > > > > [jasper2] java.lang.IllegalStateException: No Java compiler available
> > > > > [jasper2]     at
> > > > > org.apache.jasper.JspCompilationContext.createCompiler(
> > > > > JspCompilationContext.java:224)
> > > > > [jasper2]     at org.apache.jasper.JspC.processFile(JspC.java:979)
> > > > > [jasper2]     at org.apache.jasper.JspC.execute(JspC.java:1135)
> > > > > [jasper2]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > > > > Method)
> > > > > [jasper2]     at
> > > > > sun.reflect.NativeMethodAccessorImpl.invoke(
> > > NativeMethodAccessorImpl.java
> > > > > :39)
> > > > > [jasper2]     at
> > > > > sun.reflect.DelegatingMethodAccessorImpl.invoke(
> > > > > DelegatingMethodAccessorImpl.java:25)
> > > > > [jasper2]     at java.lang.reflect.Method.invoke(Method.java:585)
> > > > > [jasper2]     at
> > > > > org.apache.tools.ant.TaskAdapter.execute(TaskAdapter.java:123)
> > > > > [jasper2]     at
> > > > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
> > > > > [jasper2]     at org.apache.tools.ant.Task.perform(Task.java:364)
> > > > > [jasper2]     at org.apache.tools.ant.Target.execute(Target.java:341)
> > > > > [jasper2]     at org.apache.tools.ant.Target.performTasks(Target.java
> > > :369)
> > > > > [jasper2]     at
> > > > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
> > > > > [jasper2]     at org.apache.tools.ant.Project.executeTarget(
> > > Project.java
> > > > > :1185)
> > > > > [jasper2]     at
> > > > > org.apache.tools.ant.helper.DefaultExecutor.executeTargets(
> > > > > DefaultExecutor.java:40)
> > > > > [jasper2]     at
> > > > > org.apache.tools.ant.Project.executeTargets(Project.java:1068)
> > > > > [jasper2]     at org.apache.tools.ant.Main.runBuild(Main.java:668)
> > > > > [jasper2]     at org.apache.tools.ant.Main.startAnt(Main.java:187)
> > > > > [jasper2]     at org.apache.tools.ant.launch.Launcher.run(
> > > Launcher.java
> > > > > :246)
> > > > > [jasper2]     at org.apache.tools.ant.launch.Launcher.main(
> > > Launcher.java
> > > > > :67)
> > > > >
> > > > > BUILD FAILED
> > > > > /home/frs/bin/testsystem/build_web.xml:41:
> > > > > org.apache.jasper.JasperException: No Java compiler available
> > > > >
> > > > >
> > > > > and here's the buildfile:
> > > > > <project name="datingr4p1" default="jsp" basedir=".">
> > > > >
> > > > > <property name="tomcat.home" location="/home/frs/test_web_tomcat"/>
> > > > > <property name="root.classes"
> > > > > location="${tomcat.home}/work/Catalina/localhost/_/"/>
> > > > > <property name="root.src" location="${tomcat.home}/webapps/ROOT"/>
> > > > >
> > > > >
> > > > > <target name="jsp">
> > > > >    <!--
> > > > >         The Ant JSPC task doesn't work with Tomcat 5.0
> > > > >         so in the meantime we need to define our own task.
> > > > >      -->
> > > > >    <echo>${tomcat.home}</echo>
> > > > >
> > > > >    <echo>${java.home}</echo>
> > > > >    <property name="java.home" location="/usr/local/java"/>
> > > > >    <echo>${java.home}</echo>
> > > > >    <taskdef classname="org.apache.jasper.JspC" onerror="report"
> > > > > name="jasper2">
> > > > >        <classpath id="jspc.classpath">
> > > > >            <pathelement location="/usr/local/java/lib/tools.jar"/>
> > > > >            <fileset dir="${tomcat.home}/common/lib">
> > > > >                <include name="*.jar"/>
> > > > >            </fileset>
> > > > >            <fileset dir="${tomcat.home}/bin">
> > > > >                    <include name="*.jar"/>
> > > > >            </fileset>
> > > > >            <fileset dir="${tomcat.home}/server/lib">
> > > > >                <include name="*.jar"/>
> > > > >            </fileset>
> > > > >        </classpath>
> > > > >    </taskdef>
> > > > >
> > > > >
> > > > >    <echo>Generating java files out of root jsps</echo>
> > > > >    <jasper2 outputDir="${root.classes}"
> > > > >            uriroot="${root.src}"
> > > > >            verbose="9"
> > > > >            package="org.apache.jsp"
> > > > >            compilerSourceVM="1.5"
> > > > >            compilerTargetVM="1.5"
> > > > >            validateXml="false">
> > > > >    </jasper2>
> > > > >
> > > > >    <echo>Compiling root java files </echo>
> > > > >    <javac srcdir="${root.classes}"
> > > > >           destdir="${root.classes}"
> > > > >           verbose="false"
> > > > >           debug="true"
> > > > >           optimize="false"
> > > > >           includes="**/*.java"
> > > > >           fork="yes"
> > > > >           compilerSourceVM="1.5"
> > > > >           compilerTargetVM="1.5"
> > > > >           memoryInitialSize="800m"
> > > > >           memoryMaximumSize="800m"
> > > > >           >
> > > > >        <classpath>
> > > > >                <pathelement location="${java.home}/../lib/tools.jar"/>
> > > > >                <pathelement
> > > > > path="${tomcat.home}/webapps/ROOT/WEB-INF/classes"/>
> > > > >                <fileset dir="${tomcat.home}/common/lib">
> > > > >                        <include name="*.jar"/>
> > > > >                </fileset>
> > > > >                <fileset dir="${tomcat.home}/webapps/ROOT/WEB-INF/lib">
> > > > >                        <include name="*.jar"/>
> > > > >                </fileset>
> > > > >        </classpath>
> > > > >    </javac>
> > > > > </target>
> > > > >
> > > > >
> > > > >
> > > > > </project>
> > > > >
> > > > > suspicious java.home property seems to point to the jre, whether
> > > > > system JAVA_HOME variable point to the jdk:
> > > > > /usr/local/java/ -> jdk1.5.0_06_32bit
> > > > >
> > > > > I've checked the source code and found that the code in
> > > > > org.apache.jasper.JspCompilationContext.createCompiler(
> > > > > JspCompilationContext.java:224)
> > > > > tries to load the JDT or JAVAC compiler by name. Is it a classloading
> > > > > issue?
> > > > >
> > > > > Thanx in advance
> > > > >
> > > > > regards
> > > > > Leon
> > > > >
> > > > > ---------------------------------------------------------------------
> > > > > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > > > > For additional commands, e-mail: users-help@tomcat.apache.org
> > > > >
> > > > >
> > > >
> > > >
> > > > --
> > > > Marc Farrow
> > > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > > For additional commands, e-mail: users-help@tomcat.apache.org
> > >
> > >
> >
> >
> > --
> > Marc Farrow
> >
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: exception in jspc with 5.5.16

Posted by Leon Rosenberg <ro...@googlemail.com>.
no environment.
just calling from bash on a debian machine:
$ java -version
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode)

$ echo $JAVA_HOME
/usr/local/java/

which is
lrwxr-xr-x   1 root staff   17 Apr  5 13:51 java -> jdk1.5.0_06_32bit

Apache Ant version 1.6.5 compiled on June 2 2005

Other buildscripts are running well, and the jspc definition is taken
from the examples on tomcat's site:
http://tomcat.apache.org/tomcat-5.5-doc/jasper-howto.html
Web Application Compilation - section

regards
Leon

On 4/20/06, Marc Farrow <ma...@gmail.com> wrote:
> What ide are you using?  If you set a property at the start of the build
> script that sets java.home to your SDK, then it should use that.  I know in
> NetBeans that properties are immutable, so once set they will not be set
> again.  I am not sure about other environments, but I would guess this is a
> feature of ANT and not the IDE.
>
> hth
>
>
> On 4/20/06, Leon Rosenberg <ro...@googlemail.com> wrote:
> >
> > On 4/20/06, Marc Farrow <ma...@gmail.com> wrote:
> > > jsp:
> > >     [echo] /home/frs/test_web_tomcat
> > >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> > >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> > >     [echo] Generating java files out of root jsps
> > > [jasper2] java.lang.IllegalStateException: No Java compiler available
> > >
> > > This looks like your "compiler" is pointing to a JRE instead of JDK.
> > >
> >
> > Yes, but how?
> > The $JAVA_HOME variable is pointing to the jdk, other build scripts
> > running fine. The java.home in this special build file seems to point
> > into false direction, but I don't know what could twist it?
> >
> > leon
> >
> > >
> > >
> > > On 4/20/06, Leon Rosenberg <ro...@googlemail.com> wrote:
> > > >
> > > > Hi,
> > > >
> > > > in our deployment scripts we precompile jsps for live deployment.
> > > > However, we are in the process of switching from 5.0.x to 5.5.16 and
> > > > the precompilation fails.
> > > > I've searched the net and checked the 5.5 docs but haven't found any
> > > > hints.
> > > >
> > > > Here's the exception:
> > > >
> > > > frs@build01:~/bin/testsystem$ ant -f build_web.xml
> > > > Buildfile: build_web.xml
> > > >
> > > > jsp:
> > > >     [echo] /home/frs/test_web_tomcat
> > > >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> > > >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> > > >     [echo] Generating java files out of root jsps
> > > > [jasper2] java.lang.IllegalStateException: No Java compiler available
> > > > [jasper2]     at
> > > > org.apache.jasper.JspCompilationContext.createCompiler(
> > > > JspCompilationContext.java:224)
> > > > [jasper2]     at org.apache.jasper.JspC.processFile(JspC.java:979)
> > > > [jasper2]     at org.apache.jasper.JspC.execute(JspC.java:1135)
> > > > [jasper2]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > > > Method)
> > > > [jasper2]     at
> > > > sun.reflect.NativeMethodAccessorImpl.invoke(
> > NativeMethodAccessorImpl.java
> > > > :39)
> > > > [jasper2]     at
> > > > sun.reflect.DelegatingMethodAccessorImpl.invoke(
> > > > DelegatingMethodAccessorImpl.java:25)
> > > > [jasper2]     at java.lang.reflect.Method.invoke(Method.java:585)
> > > > [jasper2]     at
> > > > org.apache.tools.ant.TaskAdapter.execute(TaskAdapter.java:123)
> > > > [jasper2]     at
> > > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
> > > > [jasper2]     at org.apache.tools.ant.Task.perform(Task.java:364)
> > > > [jasper2]     at org.apache.tools.ant.Target.execute(Target.java:341)
> > > > [jasper2]     at org.apache.tools.ant.Target.performTasks(Target.java
> > :369)
> > > > [jasper2]     at
> > > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
> > > > [jasper2]     at org.apache.tools.ant.Project.executeTarget(
> > Project.java
> > > > :1185)
> > > > [jasper2]     at
> > > > org.apache.tools.ant.helper.DefaultExecutor.executeTargets(
> > > > DefaultExecutor.java:40)
> > > > [jasper2]     at
> > > > org.apache.tools.ant.Project.executeTargets(Project.java:1068)
> > > > [jasper2]     at org.apache.tools.ant.Main.runBuild(Main.java:668)
> > > > [jasper2]     at org.apache.tools.ant.Main.startAnt(Main.java:187)
> > > > [jasper2]     at org.apache.tools.ant.launch.Launcher.run(
> > Launcher.java
> > > > :246)
> > > > [jasper2]     at org.apache.tools.ant.launch.Launcher.main(
> > Launcher.java
> > > > :67)
> > > >
> > > > BUILD FAILED
> > > > /home/frs/bin/testsystem/build_web.xml:41:
> > > > org.apache.jasper.JasperException: No Java compiler available
> > > >
> > > >
> > > > and here's the buildfile:
> > > > <project name="datingr4p1" default="jsp" basedir=".">
> > > >
> > > > <property name="tomcat.home" location="/home/frs/test_web_tomcat"/>
> > > > <property name="root.classes"
> > > > location="${tomcat.home}/work/Catalina/localhost/_/"/>
> > > > <property name="root.src" location="${tomcat.home}/webapps/ROOT"/>
> > > >
> > > >
> > > > <target name="jsp">
> > > >    <!--
> > > >         The Ant JSPC task doesn't work with Tomcat 5.0
> > > >         so in the meantime we need to define our own task.
> > > >      -->
> > > >    <echo>${tomcat.home}</echo>
> > > >
> > > >    <echo>${java.home}</echo>
> > > >    <property name="java.home" location="/usr/local/java"/>
> > > >    <echo>${java.home}</echo>
> > > >    <taskdef classname="org.apache.jasper.JspC" onerror="report"
> > > > name="jasper2">
> > > >        <classpath id="jspc.classpath">
> > > >            <pathelement location="/usr/local/java/lib/tools.jar"/>
> > > >            <fileset dir="${tomcat.home}/common/lib">
> > > >                <include name="*.jar"/>
> > > >            </fileset>
> > > >            <fileset dir="${tomcat.home}/bin">
> > > >                    <include name="*.jar"/>
> > > >            </fileset>
> > > >            <fileset dir="${tomcat.home}/server/lib">
> > > >                <include name="*.jar"/>
> > > >            </fileset>
> > > >        </classpath>
> > > >    </taskdef>
> > > >
> > > >
> > > >    <echo>Generating java files out of root jsps</echo>
> > > >    <jasper2 outputDir="${root.classes}"
> > > >            uriroot="${root.src}"
> > > >            verbose="9"
> > > >            package="org.apache.jsp"
> > > >            compilerSourceVM="1.5"
> > > >            compilerTargetVM="1.5"
> > > >            validateXml="false">
> > > >    </jasper2>
> > > >
> > > >    <echo>Compiling root java files </echo>
> > > >    <javac srcdir="${root.classes}"
> > > >           destdir="${root.classes}"
> > > >           verbose="false"
> > > >           debug="true"
> > > >           optimize="false"
> > > >           includes="**/*.java"
> > > >           fork="yes"
> > > >           compilerSourceVM="1.5"
> > > >           compilerTargetVM="1.5"
> > > >           memoryInitialSize="800m"
> > > >           memoryMaximumSize="800m"
> > > >           >
> > > >        <classpath>
> > > >                <pathelement location="${java.home}/../lib/tools.jar"/>
> > > >                <pathelement
> > > > path="${tomcat.home}/webapps/ROOT/WEB-INF/classes"/>
> > > >                <fileset dir="${tomcat.home}/common/lib">
> > > >                        <include name="*.jar"/>
> > > >                </fileset>
> > > >                <fileset dir="${tomcat.home}/webapps/ROOT/WEB-INF/lib">
> > > >                        <include name="*.jar"/>
> > > >                </fileset>
> > > >        </classpath>
> > > >    </javac>
> > > > </target>
> > > >
> > > >
> > > >
> > > > </project>
> > > >
> > > > suspicious java.home property seems to point to the jre, whether
> > > > system JAVA_HOME variable point to the jdk:
> > > > /usr/local/java/ -> jdk1.5.0_06_32bit
> > > >
> > > > I've checked the source code and found that the code in
> > > > org.apache.jasper.JspCompilationContext.createCompiler(
> > > > JspCompilationContext.java:224)
> > > > tries to load the JDT or JAVAC compiler by name. Is it a classloading
> > > > issue?
> > > >
> > > > Thanx in advance
> > > >
> > > > regards
> > > > Leon
> > > >
> > > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > > > For additional commands, e-mail: users-help@tomcat.apache.org
> > > >
> > > >
> > >
> > >
> > > --
> > > Marc Farrow
> > >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail: users-help@tomcat.apache.org
> >
> >
>
>
> --
> Marc Farrow
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: exception in jspc with 5.5.16

Posted by Marc Farrow <ma...@gmail.com>.
What ide are you using?  If you set a property at the start of the build
script that sets java.home to your SDK, then it should use that.  I know in
NetBeans that properties are immutable, so once set they will not be set
again.  I am not sure about other environments, but I would guess this is a
feature of ANT and not the IDE.

hth


On 4/20/06, Leon Rosenberg <ro...@googlemail.com> wrote:
>
> On 4/20/06, Marc Farrow <ma...@gmail.com> wrote:
> > jsp:
> >     [echo] /home/frs/test_web_tomcat
> >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> >     [echo] Generating java files out of root jsps
> > [jasper2] java.lang.IllegalStateException: No Java compiler available
> >
> > This looks like your "compiler" is pointing to a JRE instead of JDK.
> >
>
> Yes, but how?
> The $JAVA_HOME variable is pointing to the jdk, other build scripts
> running fine. The java.home in this special build file seems to point
> into false direction, but I don't know what could twist it?
>
> leon
>
> >
> >
> > On 4/20/06, Leon Rosenberg <ro...@googlemail.com> wrote:
> > >
> > > Hi,
> > >
> > > in our deployment scripts we precompile jsps for live deployment.
> > > However, we are in the process of switching from 5.0.x to 5.5.16 and
> > > the precompilation fails.
> > > I've searched the net and checked the 5.5 docs but haven't found any
> > > hints.
> > >
> > > Here's the exception:
> > >
> > > frs@build01:~/bin/testsystem$ ant -f build_web.xml
> > > Buildfile: build_web.xml
> > >
> > > jsp:
> > >     [echo] /home/frs/test_web_tomcat
> > >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> > >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> > >     [echo] Generating java files out of root jsps
> > > [jasper2] java.lang.IllegalStateException: No Java compiler available
> > > [jasper2]     at
> > > org.apache.jasper.JspCompilationContext.createCompiler(
> > > JspCompilationContext.java:224)
> > > [jasper2]     at org.apache.jasper.JspC.processFile(JspC.java:979)
> > > [jasper2]     at org.apache.jasper.JspC.execute(JspC.java:1135)
> > > [jasper2]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > > Method)
> > > [jasper2]     at
> > > sun.reflect.NativeMethodAccessorImpl.invoke(
> NativeMethodAccessorImpl.java
> > > :39)
> > > [jasper2]     at
> > > sun.reflect.DelegatingMethodAccessorImpl.invoke(
> > > DelegatingMethodAccessorImpl.java:25)
> > > [jasper2]     at java.lang.reflect.Method.invoke(Method.java:585)
> > > [jasper2]     at
> > > org.apache.tools.ant.TaskAdapter.execute(TaskAdapter.java:123)
> > > [jasper2]     at
> > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
> > > [jasper2]     at org.apache.tools.ant.Task.perform(Task.java:364)
> > > [jasper2]     at org.apache.tools.ant.Target.execute(Target.java:341)
> > > [jasper2]     at org.apache.tools.ant.Target.performTasks(Target.java
> :369)
> > > [jasper2]     at
> > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
> > > [jasper2]     at org.apache.tools.ant.Project.executeTarget(
> Project.java
> > > :1185)
> > > [jasper2]     at
> > > org.apache.tools.ant.helper.DefaultExecutor.executeTargets(
> > > DefaultExecutor.java:40)
> > > [jasper2]     at
> > > org.apache.tools.ant.Project.executeTargets(Project.java:1068)
> > > [jasper2]     at org.apache.tools.ant.Main.runBuild(Main.java:668)
> > > [jasper2]     at org.apache.tools.ant.Main.startAnt(Main.java:187)
> > > [jasper2]     at org.apache.tools.ant.launch.Launcher.run(
> Launcher.java
> > > :246)
> > > [jasper2]     at org.apache.tools.ant.launch.Launcher.main(
> Launcher.java
> > > :67)
> > >
> > > BUILD FAILED
> > > /home/frs/bin/testsystem/build_web.xml:41:
> > > org.apache.jasper.JasperException: No Java compiler available
> > >
> > >
> > > and here's the buildfile:
> > > <project name="datingr4p1" default="jsp" basedir=".">
> > >
> > > <property name="tomcat.home" location="/home/frs/test_web_tomcat"/>
> > > <property name="root.classes"
> > > location="${tomcat.home}/work/Catalina/localhost/_/"/>
> > > <property name="root.src" location="${tomcat.home}/webapps/ROOT"/>
> > >
> > >
> > > <target name="jsp">
> > >    <!--
> > >         The Ant JSPC task doesn't work with Tomcat 5.0
> > >         so in the meantime we need to define our own task.
> > >      -->
> > >    <echo>${tomcat.home}</echo>
> > >
> > >    <echo>${java.home}</echo>
> > >    <property name="java.home" location="/usr/local/java"/>
> > >    <echo>${java.home}</echo>
> > >    <taskdef classname="org.apache.jasper.JspC" onerror="report"
> > > name="jasper2">
> > >        <classpath id="jspc.classpath">
> > >            <pathelement location="/usr/local/java/lib/tools.jar"/>
> > >            <fileset dir="${tomcat.home}/common/lib">
> > >                <include name="*.jar"/>
> > >            </fileset>
> > >            <fileset dir="${tomcat.home}/bin">
> > >                    <include name="*.jar"/>
> > >            </fileset>
> > >            <fileset dir="${tomcat.home}/server/lib">
> > >                <include name="*.jar"/>
> > >            </fileset>
> > >        </classpath>
> > >    </taskdef>
> > >
> > >
> > >    <echo>Generating java files out of root jsps</echo>
> > >    <jasper2 outputDir="${root.classes}"
> > >            uriroot="${root.src}"
> > >            verbose="9"
> > >            package="org.apache.jsp"
> > >            compilerSourceVM="1.5"
> > >            compilerTargetVM="1.5"
> > >            validateXml="false">
> > >    </jasper2>
> > >
> > >    <echo>Compiling root java files </echo>
> > >    <javac srcdir="${root.classes}"
> > >           destdir="${root.classes}"
> > >           verbose="false"
> > >           debug="true"
> > >           optimize="false"
> > >           includes="**/*.java"
> > >           fork="yes"
> > >           compilerSourceVM="1.5"
> > >           compilerTargetVM="1.5"
> > >           memoryInitialSize="800m"
> > >           memoryMaximumSize="800m"
> > >           >
> > >        <classpath>
> > >                <pathelement location="${java.home}/../lib/tools.jar"/>
> > >                <pathelement
> > > path="${tomcat.home}/webapps/ROOT/WEB-INF/classes"/>
> > >                <fileset dir="${tomcat.home}/common/lib">
> > >                        <include name="*.jar"/>
> > >                </fileset>
> > >                <fileset dir="${tomcat.home}/webapps/ROOT/WEB-INF/lib">
> > >                        <include name="*.jar"/>
> > >                </fileset>
> > >        </classpath>
> > >    </javac>
> > > </target>
> > >
> > >
> > >
> > > </project>
> > >
> > > suspicious java.home property seems to point to the jre, whether
> > > system JAVA_HOME variable point to the jdk:
> > > /usr/local/java/ -> jdk1.5.0_06_32bit
> > >
> > > I've checked the source code and found that the code in
> > > org.apache.jasper.JspCompilationContext.createCompiler(
> > > JspCompilationContext.java:224)
> > > tries to load the JDT or JAVAC compiler by name. Is it a classloading
> > > issue?
> > >
> > > Thanx in advance
> > >
> > > regards
> > > Leon
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > > For additional commands, e-mail: users-help@tomcat.apache.org
> > >
> > >
> >
> >
> > --
> > Marc Farrow
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>


--
Marc Farrow

Re: exception in jspc with 5.5.16

Posted by Leon Rosenberg <ro...@googlemail.com>.
On 4/20/06, Marc Farrow <ma...@gmail.com> wrote:
> jsp:
>     [echo] /home/frs/test_web_tomcat
>     [echo] /usr/local/jdk1.5.0_06_32bit/jre
>     [echo] /usr/local/jdk1.5.0_06_32bit/jre
>     [echo] Generating java files out of root jsps
> [jasper2] java.lang.IllegalStateException: No Java compiler available
>
> This looks like your "compiler" is pointing to a JRE instead of JDK.
>

Yes, but how?
The $JAVA_HOME variable is pointing to the jdk, other build scripts
running fine. The java.home in this special build file seems to point
into false direction, but I don't know what could twist it?

leon

>
>
> On 4/20/06, Leon Rosenberg <ro...@googlemail.com> wrote:
> >
> > Hi,
> >
> > in our deployment scripts we precompile jsps for live deployment.
> > However, we are in the process of switching from 5.0.x to 5.5.16 and
> > the precompilation fails.
> > I've searched the net and checked the 5.5 docs but haven't found any
> > hints.
> >
> > Here's the exception:
> >
> > frs@build01:~/bin/testsystem$ ant -f build_web.xml
> > Buildfile: build_web.xml
> >
> > jsp:
> >     [echo] /home/frs/test_web_tomcat
> >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> >     [echo] /usr/local/jdk1.5.0_06_32bit/jre
> >     [echo] Generating java files out of root jsps
> > [jasper2] java.lang.IllegalStateException: No Java compiler available
> > [jasper2]     at
> > org.apache.jasper.JspCompilationContext.createCompiler(
> > JspCompilationContext.java:224)
> > [jasper2]     at org.apache.jasper.JspC.processFile(JspC.java:979)
> > [jasper2]     at org.apache.jasper.JspC.execute(JspC.java:1135)
> > [jasper2]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > Method)
> > [jasper2]     at
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java
> > :39)
> > [jasper2]     at
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(
> > DelegatingMethodAccessorImpl.java:25)
> > [jasper2]     at java.lang.reflect.Method.invoke(Method.java:585)
> > [jasper2]     at
> > org.apache.tools.ant.TaskAdapter.execute(TaskAdapter.java:123)
> > [jasper2]     at
> > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
> > [jasper2]     at org.apache.tools.ant.Task.perform(Task.java:364)
> > [jasper2]     at org.apache.tools.ant.Target.execute(Target.java:341)
> > [jasper2]     at org.apache.tools.ant.Target.performTasks(Target.java:369)
> > [jasper2]     at
> > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
> > [jasper2]     at org.apache.tools.ant.Project.executeTarget(Project.java
> > :1185)
> > [jasper2]     at
> > org.apache.tools.ant.helper.DefaultExecutor.executeTargets(
> > DefaultExecutor.java:40)
> > [jasper2]     at
> > org.apache.tools.ant.Project.executeTargets(Project.java:1068)
> > [jasper2]     at org.apache.tools.ant.Main.runBuild(Main.java:668)
> > [jasper2]     at org.apache.tools.ant.Main.startAnt(Main.java:187)
> > [jasper2]     at org.apache.tools.ant.launch.Launcher.run(Launcher.java
> > :246)
> > [jasper2]     at org.apache.tools.ant.launch.Launcher.main(Launcher.java
> > :67)
> >
> > BUILD FAILED
> > /home/frs/bin/testsystem/build_web.xml:41:
> > org.apache.jasper.JasperException: No Java compiler available
> >
> >
> > and here's the buildfile:
> > <project name="datingr4p1" default="jsp" basedir=".">
> >
> > <property name="tomcat.home" location="/home/frs/test_web_tomcat"/>
> > <property name="root.classes"
> > location="${tomcat.home}/work/Catalina/localhost/_/"/>
> > <property name="root.src" location="${tomcat.home}/webapps/ROOT"/>
> >
> >
> > <target name="jsp">
> >    <!--
> >         The Ant JSPC task doesn't work with Tomcat 5.0
> >         so in the meantime we need to define our own task.
> >      -->
> >    <echo>${tomcat.home}</echo>
> >
> >    <echo>${java.home}</echo>
> >    <property name="java.home" location="/usr/local/java"/>
> >    <echo>${java.home}</echo>
> >    <taskdef classname="org.apache.jasper.JspC" onerror="report"
> > name="jasper2">
> >        <classpath id="jspc.classpath">
> >            <pathelement location="/usr/local/java/lib/tools.jar"/>
> >            <fileset dir="${tomcat.home}/common/lib">
> >                <include name="*.jar"/>
> >            </fileset>
> >            <fileset dir="${tomcat.home}/bin">
> >                    <include name="*.jar"/>
> >            </fileset>
> >            <fileset dir="${tomcat.home}/server/lib">
> >                <include name="*.jar"/>
> >            </fileset>
> >        </classpath>
> >    </taskdef>
> >
> >
> >    <echo>Generating java files out of root jsps</echo>
> >    <jasper2 outputDir="${root.classes}"
> >            uriroot="${root.src}"
> >            verbose="9"
> >            package="org.apache.jsp"
> >            compilerSourceVM="1.5"
> >            compilerTargetVM="1.5"
> >            validateXml="false">
> >    </jasper2>
> >
> >    <echo>Compiling root java files </echo>
> >    <javac srcdir="${root.classes}"
> >           destdir="${root.classes}"
> >           verbose="false"
> >           debug="true"
> >           optimize="false"
> >           includes="**/*.java"
> >           fork="yes"
> >           compilerSourceVM="1.5"
> >           compilerTargetVM="1.5"
> >           memoryInitialSize="800m"
> >           memoryMaximumSize="800m"
> >           >
> >        <classpath>
> >                <pathelement location="${java.home}/../lib/tools.jar"/>
> >                <pathelement
> > path="${tomcat.home}/webapps/ROOT/WEB-INF/classes"/>
> >                <fileset dir="${tomcat.home}/common/lib">
> >                        <include name="*.jar"/>
> >                </fileset>
> >                <fileset dir="${tomcat.home}/webapps/ROOT/WEB-INF/lib">
> >                        <include name="*.jar"/>
> >                </fileset>
> >        </classpath>
> >    </javac>
> > </target>
> >
> >
> >
> > </project>
> >
> > suspicious java.home property seems to point to the jre, whether
> > system JAVA_HOME variable point to the jdk:
> > /usr/local/java/ -> jdk1.5.0_06_32bit
> >
> > I've checked the source code and found that the code in
> > org.apache.jasper.JspCompilationContext.createCompiler(
> > JspCompilationContext.java:224)
> > tries to load the JDT or JAVAC compiler by name. Is it a classloading
> > issue?
> >
> > Thanx in advance
> >
> > regards
> > Leon
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail: users-help@tomcat.apache.org
> >
> >
>
>
> --
> Marc Farrow
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: exception in jspc with 5.5.16

Posted by Marc Farrow <ma...@gmail.com>.
jsp:
    [echo] /home/frs/test_web_tomcat
    [echo] /usr/local/jdk1.5.0_06_32bit/jre
    [echo] /usr/local/jdk1.5.0_06_32bit/jre
    [echo] Generating java files out of root jsps
[jasper2] java.lang.IllegalStateException: No Java compiler available

This looks like your "compiler" is pointing to a JRE instead of JDK.



On 4/20/06, Leon Rosenberg <ro...@googlemail.com> wrote:
>
> Hi,
>
> in our deployment scripts we precompile jsps for live deployment.
> However, we are in the process of switching from 5.0.x to 5.5.16 and
> the precompilation fails.
> I've searched the net and checked the 5.5 docs but haven't found any
> hints.
>
> Here's the exception:
>
> frs@build01:~/bin/testsystem$ ant -f build_web.xml
> Buildfile: build_web.xml
>
> jsp:
>     [echo] /home/frs/test_web_tomcat
>     [echo] /usr/local/jdk1.5.0_06_32bit/jre
>     [echo] /usr/local/jdk1.5.0_06_32bit/jre
>     [echo] Generating java files out of root jsps
> [jasper2] java.lang.IllegalStateException: No Java compiler available
> [jasper2]     at
> org.apache.jasper.JspCompilationContext.createCompiler(
> JspCompilationContext.java:224)
> [jasper2]     at org.apache.jasper.JspC.processFile(JspC.java:979)
> [jasper2]     at org.apache.jasper.JspC.execute(JspC.java:1135)
> [jasper2]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
> [jasper2]     at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java
> :39)
> [jasper2]     at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(
> DelegatingMethodAccessorImpl.java:25)
> [jasper2]     at java.lang.reflect.Method.invoke(Method.java:585)
> [jasper2]     at
> org.apache.tools.ant.TaskAdapter.execute(TaskAdapter.java:123)
> [jasper2]     at
> org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
> [jasper2]     at org.apache.tools.ant.Task.perform(Task.java:364)
> [jasper2]     at org.apache.tools.ant.Target.execute(Target.java:341)
> [jasper2]     at org.apache.tools.ant.Target.performTasks(Target.java:369)
> [jasper2]     at
> org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
> [jasper2]     at org.apache.tools.ant.Project.executeTarget(Project.java
> :1185)
> [jasper2]     at
> org.apache.tools.ant.helper.DefaultExecutor.executeTargets(
> DefaultExecutor.java:40)
> [jasper2]     at
> org.apache.tools.ant.Project.executeTargets(Project.java:1068)
> [jasper2]     at org.apache.tools.ant.Main.runBuild(Main.java:668)
> [jasper2]     at org.apache.tools.ant.Main.startAnt(Main.java:187)
> [jasper2]     at org.apache.tools.ant.launch.Launcher.run(Launcher.java
> :246)
> [jasper2]     at org.apache.tools.ant.launch.Launcher.main(Launcher.java
> :67)
>
> BUILD FAILED
> /home/frs/bin/testsystem/build_web.xml:41:
> org.apache.jasper.JasperException: No Java compiler available
>
>
> and here's the buildfile:
> <project name="datingr4p1" default="jsp" basedir=".">
>
> <property name="tomcat.home" location="/home/frs/test_web_tomcat"/>
> <property name="root.classes"
> location="${tomcat.home}/work/Catalina/localhost/_/"/>
> <property name="root.src" location="${tomcat.home}/webapps/ROOT"/>
>
>
> <target name="jsp">
>    <!--
>         The Ant JSPC task doesn't work with Tomcat 5.0
>         so in the meantime we need to define our own task.
>      -->
>    <echo>${tomcat.home}</echo>
>
>    <echo>${java.home}</echo>
>    <property name="java.home" location="/usr/local/java"/>
>    <echo>${java.home}</echo>
>    <taskdef classname="org.apache.jasper.JspC" onerror="report"
> name="jasper2">
>        <classpath id="jspc.classpath">
>            <pathelement location="/usr/local/java/lib/tools.jar"/>
>            <fileset dir="${tomcat.home}/common/lib">
>                <include name="*.jar"/>
>            </fileset>
>            <fileset dir="${tomcat.home}/bin">
>                    <include name="*.jar"/>
>            </fileset>
>            <fileset dir="${tomcat.home}/server/lib">
>                <include name="*.jar"/>
>            </fileset>
>        </classpath>
>    </taskdef>
>
>
>    <echo>Generating java files out of root jsps</echo>
>    <jasper2 outputDir="${root.classes}"
>            uriroot="${root.src}"
>            verbose="9"
>            package="org.apache.jsp"
>            compilerSourceVM="1.5"
>            compilerTargetVM="1.5"
>            validateXml="false">
>    </jasper2>
>
>    <echo>Compiling root java files </echo>
>    <javac srcdir="${root.classes}"
>           destdir="${root.classes}"
>           verbose="false"
>           debug="true"
>           optimize="false"
>           includes="**/*.java"
>           fork="yes"
>           compilerSourceVM="1.5"
>           compilerTargetVM="1.5"
>           memoryInitialSize="800m"
>           memoryMaximumSize="800m"
>           >
>        <classpath>
>                <pathelement location="${java.home}/../lib/tools.jar"/>
>                <pathelement
> path="${tomcat.home}/webapps/ROOT/WEB-INF/classes"/>
>                <fileset dir="${tomcat.home}/common/lib">
>                        <include name="*.jar"/>
>                </fileset>
>                <fileset dir="${tomcat.home}/webapps/ROOT/WEB-INF/lib">
>                        <include name="*.jar"/>
>                </fileset>
>        </classpath>
>    </javac>
> </target>
>
>
>
> </project>
>
> suspicious java.home property seems to point to the jre, whether
> system JAVA_HOME variable point to the jdk:
> /usr/local/java/ -> jdk1.5.0_06_32bit
>
> I've checked the source code and found that the code in
> org.apache.jasper.JspCompilationContext.createCompiler(
> JspCompilationContext.java:224)
> tries to load the JDT or JAVAC compiler by name. Is it a classloading
> issue?
>
> Thanx in advance
>
> regards
> Leon
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>


--
Marc Farrow