I stuck a sleep() in before the undeploy and this seems to have 
worked-around the problem and thus confirmed my suspicion.

It is showing up a further problem - though not in Jetty:

13:30:14,538 INFO  [EjbModule] Destroying
13:30:14,600 ERROR [Log4jService$ThrowableListenerLoggingAdapter] 
unhandled throwable
java.lang.NullPointerException
        at 
org.jboss.ejb.plugins.EntityInstanceCache.freeContext(EntityInstanceCache.java:120)
        at 
org.jboss.ejb.plugins.AbstractInstanceCache$1.execute(AbstractInstanceCache.java:617)
        at org.jboss.util.WorkerQueue$QueueLoop.run(WorkerQueue.java:206)
        at java.lang.Thread.run(Thread.java:479)
13:30:14,604 INFO  [EjbModule] Remove JSR-77 EJB Module: 
jboss.management.single:J2EEApplication=jbosstest-web.ear,J2EEServer=Single,j2eeType=EJBModule,name=cts.jar
13:30:14,605 INFO  [EJBModule] Stopping
13:30:14,605 INFO  [EJBModule] Stopped
13:30:14,605 INFO  [EjbModule] Destroyed


A sleep() is obviously not a decent solution.


We can alter Jetty or alter the testsuite.

Bearing in mind that modifying Jetty to finish up all requests before 
undeploying is a feature that we are looking at (along with holding up 
requests during a redeploy), but is not a quick bugfix I think that we 
should make a mental to explicitly test 
undeployment-whilst-processing-request at a later date and fix the 
testsuite to wait for all requests to return before undeploying.

What are your thoughts ?


Jules




Jules Gosnell wrote:
> Scott,
> 
> This appears to be caused by a race between Jetty responding to the 
> request to the JSP and the testsuite undeploying it.
> 
> Looking at my request and server logs I can see that a request was made 
> for include_ejb.jsp during the second before the call to undeploy 
> jbosstest-web.ear.
> 
> It looks like, by the time Jetty has got the JSP compiled and tries to 
> run it, it has been undeployed.
> 
> Jetty could handle this more gracefully - agreed (and we are thinking 
> about it).
> 
> Is it possible that the testsuite is making it's requests asynchronously 
> and undeploying it's ear before all requests have finished ?
> 
> 
> Jules
> 
> 
> Scott M Stark wrote:
> 
>> When the org.jboss.test.web.test.WebIntegrationUnitTestCase is run 
>> against
>> the 3.0 branch the undeployment of the war is causing the NPE shown here:
>>
>> 17:38:01,062 INFO  [MainDeployer] Undeployed
>> file:/D:/usr/local/src/cvsroot/JBos
>> s3.0/jboss-all/testsuite/output/lib/jbosstest-web.ear
>> 17:38:02,656 ERROR [STDERR] java.lang.NullPointerException
>> 17:38:02,656 ERROR [STDERR]     at
>> org.mortbay.jetty.servlet.ServletHandler$Cont
>> ext.getResource(ServletHandler.java:910)
>> 17:38:02,671 ERROR [STDERR]     at
>> org.apache.jasper.JspEngineContext.getResourc
>> e(JspEngineContext.java:366)
>> 17:38:02,671 ERROR [STDERR]     at
>> org.apache.jasper.compiler.JspCompiler.isOutD
>> ated(JspCompiler.java:179)
>> 17:38:02,687 ERROR [STDERR]     at
>> org.apache.jasper.compiler.Compiler.compile(C
>> ompiler.java:121)
>> 17:38:02,687 ERROR [STDERR]     at
>> org.apache.jasper.servlet.JspServlet.loadJSP(
>> JspServlet.java:557)
>> 17:38:02,687 ERROR [STDERR]     at
>> org.apache.jasper.servlet.JspServlet$JspServl
>> etWrapper.loadIfNecessary(JspServlet.java:177)
>> 17:38:02,703 ERROR [STDERR]     at
>> org.apache.jasper.servlet.JspServlet$JspServl
>> etWrapper.service(JspServlet.java:189)
>> 17:38:02,703 ERROR [STDERR]     at
>> org.apache.jasper.servlet.JspServlet.serviceJ
>> spFile(JspServlet.java:382)
>> 17:38:02,703 ERROR [STDERR]     at
>> org.apache.jasper.servlet.JspServlet.service(
>> JspServlet.java:474)
>> 17:38:02,703 ERROR [STDERR]     at
>> javax.servlet.http.HttpServlet.service(HttpSe
>> rvlet.java:853)
>> 17:38:02,703 ERROR [STDERR]     at
>> org.mortbay.jetty.servlet.ServletHolder.handl
>> e(ServletHolder.java:326)
>> 17:38:02,718 ERROR [STDERR]     at
>> org.mortbay.jetty.servlet.Dispatcher.dispatch
>> (Dispatcher.java:259)
>> 17:38:02,718 ERROR [STDERR]     at
>> org.mortbay.jetty.servlet.Dispatcher.include(
>> Dispatcher.java:171)
>> 17:38:02,718 ERROR [STDERR]     at
>> org.apache.jasper.runtime.JspRuntimeLibrary.i
>> nclude(JspRuntimeLibrary.java:820)
>> 17:38:02,718 ERROR [STDERR]     at
>> org.apache.jsp.include_0005fejb$jsp._jspServi
>> ce(include_0005fejb$jsp.java:61)
>> 17:38:02,718 ERROR [STDERR]     at
>> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
>> 17:38:02,718 ERROR [STDERR]     at
>> javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>> 17:38:02,734 ERROR [STDERR]     at
>> org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.ja 
>>
>> va:202)
>> 17:38:02,734 ERROR [STDERR]     at
>> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
>> 17:38:02,734 ERROR [STDERR]     at
>> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:474)
>> 17:38:02,734 ERROR [STDERR]     at
>> javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>> 17:38:02,734 ERROR [STDERR]     at
>> org.mortbay.jetty.servlet.ServletHolder.handleServletHolder.java:326)
>> 17:38:02,750 ERROR [STDERR]     at
>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:595)
>> 17:38:02,750 ERROR [STDERR]     at
>> org.mortbay.http.HttpContext.handle(HttpContext.java:1357)
>> 17:38:02,750 ERROR [STDERR]     at
>> org.mortbay.http.HttpContext.handle(HttpContext.java:1309)
>> 17:38:02,750 ERROR [STDERR]     at
>> org.mortbay.http.HttpServer.service(HttpServer.java:744)
>> 17:38:02,750 ERROR [STDERR]     at
>> org.jboss.jetty.Jetty.service(Jetty.java:525)
>> 17:38:02,750 ERROR [STDERR]     at
>> org.mortbay.http.HttpConnection.service(HttpConnection.java:743)
>> 17:38:02,765 ERROR [STDERR]     at
>> org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:916)
>> 17:38:02,765 ERROR [STDERR]     at
>> org.mortbay.http.HttpConnection.handle(HttpConnection.java:758)
>> 17:38:02,765 ERROR [STDERR]     at
>> org.mortbay.http.SocketListener.handleConnection(SocketListener.java:145)
>> 17:38:02,765 ERROR [STDERR]     at
>> org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:287)
>> 17:38:02,765 ERROR [STDERR]     at
>> org.mortbay.util.ThreadPool$JobRunner.run(ThreadPool.java:715)
>> 17:38:02,765 ERROR [STDERR]     at java.lang.Thread.run(Thread.java:479)
>> 17:38:02,781 WARN  [Jetty] WARNING: Servlet Exception for
>> /jbosstest/restricted/
>> include_ejb.jsp
>>
>> xxxxxxxxxxxxxxxxxxxxxxxx
>> Scott Stark
>> Chief Technology Officer
>> JBoss Group, LLC
>> xxxxxxxxxxxxxxxxxxxxxxxx
>>
>>
>> _______________________________________________________________
>> Hundreds of nodes, one monster rendering program.
>> Now that's a super model! Visit http://clustering.foundries.sf.net/
>>
>> _______________________________________________
>> Jboss-development mailing list
>> [EMAIL PROTECTED]
>> https://lists.sourceforge.net/lists/listinfo/jboss-development
>>
> 
> 
> 
> 
> _______________________________________________________________
> Hundreds of nodes, one monster rendering program.
> Now that's a super model! Visit http://clustering.foundries.sf.net/
> 
> _______________________________________________
> Jboss-development mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/jboss-development
> 




_______________________________________________________________
Hundreds of nodes, one monster rendering program.
Now that's a super model! Visit http://clustering.foundries.sf.net/

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to