After Deploying glassbox.war, when
http://localhost:8080/glassbox is selected in Jboss
4.0.0, the following exception is thrown in the
console
javax.servlet.ServletException: Error occured during
request processing:
org/apache/tools/ant/launch/Locator
org.springframework.web.servlet.DispatcherServ
let.doDispatch(DispatcherServlet.java:757)
org.springframework.web.servlet.DispatcherServ
let.doService(DispatcherServlet.java:658)
org.springframework.web.servlet.FrameworkServl
et.processRequest(FrameworkServlet.java:392)
org.springframework.web.servlet.FrameworkServl
et.doGet(FrameworkServlet.java:347)
javax.servlet.http.HttpServlet.service
(HttpServlet.java:697)
javax.servlet.http.HttpServlet.service
(HttpServlet.java:810)
org.jboss.web.tomcat.filters.ReplyHeaderFilter
.doFilter(ReplyHeaderFilter.java:75)
root cause
13:48:43,833 ERROR [Engine] StandardWrapperValve
[springapp]: Servlet.service() for servlet
springapp threw exception
java.lang.NoClassDefFoundError:
org/apache/tools/ant/launch/Locator
at org.apache.tools.ant.util.FileUtils.fromURI
(FileUtils.java:1286)
at org.apache.tools.ant.Location.<init>
(Location.java:87)
at org.apache.tools.ant.helper.ProjectHelper2
$ElementHandler.onStartElement
(ProjectHelper2.java:924)
at org.apache.tools.ant.helper.ProjectHelper2
$RootHandler.startElement(ProjectHelper2.java:452)
at
org.apache.xerces.parsers.AbstractSAXParser.startEleme
nt(Unknown Source)
at
org.apache.xerces.parsers.AbstractXMLDocumentParser.em
ptyElement(Unknown Source)
at
org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanSt
artElement(Unknown Source)
at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$
FragmentContent
Dispatcher.dispatch(Unknown Source)
at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.
scanDocument(Unknown Source)
at
org.apache.xerces.parsers.XML11Configuration.parse
(Unknown Source)
at
org.apache.xerces.parsers.XML11Configuration.parse
(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse
(Unknown Source)
at
org.apache.xerces.parsers.AbstractSAXParser.parse
(Unknown Source)
at
org.apache.tools.ant.helper.ProjectHelper2.parse
(ProjectHelper2.java:208)
at
org.apache.tools.ant.helper.ProjectHelper2.parse
(ProjectHelper2.java:131)
at
glassbox.installer.ant.AntInstallerImpl.executeTargets
(AntInstallerImpl.java:225)
at
glassbox.installer.ant.AntInstallerImpl.install
(AntInstallerImpl.java:105)
at
glassbox.installer.web.controller.InstallerController.
handleRequest(InstallerController.java:46)
Application: JPetstore
Server: Tomcat, Windows, Sun1.4
Version: 2.0 Beta RC9
Steps to reproduce:
1. Deploy glassbox.war on JBoss-4.0.0 with Java 1.4
on windows
2. Type in http://localhost:8080/glassbox
3. The above pasted exception is thrown
Logged In: YES
user_id=1534801
Naveen, is this still happening in more recent versions than
RC9? Could you please verify?
Logged In: YES
user_id=293914
Steven and I have both been able to reproduce this problem.
The work around is to unpack ant.jar and ant-launcher.jar
into the server/lib directory. We should investigate the
root cause of the problem to see if we can fix it, or if not
at least detect it and provide instructions for resolution.
Does this affect any more recent releases than JBoss 4.0.0?
If not, then it's only medium priority...
Logged In: YES
user_id=1598621
Steve, I have seen this problem only on JBoss 4.0.0
Deployment goes on smoothly in other recent releases of
JBoss
I am getting the same problem even with RC14 of Glassbox
Logged In: YES
user_id=1519253
http://jira.jboss.com/jira/browse/JBJMX-78
Apparently war classloader separation was a problem in
JBoss 4.0.0. In our case, jboss-tomcat50.sar contains an
older version of ant (version 1.6.2), which likely
interferes with our version. The likely workaround for
people who can't upgrade would be to extract ant.jar and
ant-launcher.jar into <jboss-4.0.0-home>/lib/endorsed.
This is still happening
14:27:26,310 INFO [Server] JBoss (MX MicroKernel) [4.3.0.GA (build: SVNTag=JBPAPP_4_3_0_GA date=200801031548
)] Started in 58s:78ms
14:27:31,044 INFO [DispatcherServlet] FrameworkServlet 'springapp': initialization started
14:27:31,044 ERROR [ContainerBase] StandardWrapper.Throwable
java.lang.IllegalStateException: Root context attribute is not of type WebApplicationContext: org.springframe
work.web.context.support.XmlWebApplicationContext: display name [Root WebApplicationContext]; startup date [T
ue May 05 14:26:52 EDT 2009]; root of context hierarchy; config locations [/WEB-INF/applicationContext.xml]
at org.springframework.web.context.support.WebApplicationContextUtils.getWebApplicationContext(WebApp
licationContextUtils.java:66)
at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:2
64)
at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:235)
at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:126)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:806)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:595)
14:27:31,044 ERROR [ContainerBase] Allocate exception for servlet springapp
java.lang.IllegalStateException: Root context attribute is not of type WebApplicationContext: org.springframe
work.web.context.support.XmlWebApplicationContext: display name [Root WebApplicationContext]; startup date [T
ue May 05 14:26:52 EDT 2009]; root of context hierarchy; config locations [/WEB-INF/applicationContext.xml]
at org.springframework.web.context.support.WebApplicationContextUtils.getWebApplicationContext(WebApp
licationContextUtils.java:66)
at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:2
64)
at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:235)
at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:126)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:806)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:595)