[
https://jira.jboss.org/jira/browse/JBIDE-2742?page=com.atlassian.jira.plu...
]
Galder Zamarreno updated JBIDE-2742:
------------------------------------
Attachment: boot-jbds.log
4.0.x servers should add JDK_HOME/lib/tools.jar, otherwise
jmx-console might be broken
--------------------------------------------------------------------------------------
Key: JBIDE-2742
URL:
https://jira.jboss.org/jira/browse/JBIDE-2742
Project: Tools (JBoss Tools)
Issue Type: Bug
Components: JBossAS
Affects Versions: 3.0.0.alpha
Reporter: Galder Zamarreno
Attachments: boot-jbds.log, boot-normal.log
jmx-console access for AS 4.0.1.SP1 (for example) instances started via JBDS is broken.
When you try to access the jmx-console, you get:
ype Exception report
message
description The server encountered an internal error () that prevented it from fulfilling
this request.
exception
org.apache.jasper.JasperException: Unable to compile class for JSP
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:97)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:346)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:414)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:75)
root cause
Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK
org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory.getCompiler(CompilerAdapterFactory.java:105)
org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:929)
org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:758)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:382)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:75)
I don't get this issue when I start up via run.sh. Why? I suspect that run.sh adds
lib/tools.jar
to the classpath as shown in boot-normal.log
[galder@dhcp-144-245 jdk1.5.0_12]$ find . -name "*.jar" | xargs grep
com/sun/tools/javac/Main
Binary file ./lib/tools.jar matches
grep -nH -e "lib/tools.jar" boot-normal.log
boot-normal.log:78:11:20:32,723 DEBUG [ServerInfo] java.class.path:
/home/galder/access/as-rel/4.0.1.sp1/bin/run.jar:/usr/java/jdk1.5.0_12/lib/tools.jar
Whereas when started from JBDS does not:
grep -nH -e "lib/tools.jar" boot-jbds.log
Grep finished with no matches found at Mon Sep 8 11:28:39
Please find attached both boot.log files. IMO, JBDS should be more conservative just like
run.sh is
which requires pointing to a JDK vs a JRE, at least for the 4.0.x series. I think you can
get away with
using a JRE for 4.2 or 4.3 but I'm not sure.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira