Summary: | reload through manager webapp fails to redeploy classes/jars | ||
---|---|---|---|
Product: | Tomcat 4 | Reporter: | David Rees <drees76> |
Component: | Webapps:Manager | Assignee: | Tomcat Developers Mailing List <dev> |
Status: | RESOLVED FIXED | ||
Severity: | critical | CC: | kgmyh, Marcel.Sansaricq, netguru, rocky-s, stefan.machwirth |
Priority: | P3 | ||
Version: | 4.1.31 | ||
Target Milestone: | --- | ||
Hardware: | Other | ||
OS: | Windows Server 2003 |
Description
David Rees
2003-08-03 23:06:39 UTC
I confirm I have that exact problem, both on 4.1.26 that I installed last Friday, and on 4.1.27 that I installed today. Previous version was 4.1.24, which was working fine. Configuration was left the same. I'm not sure about it, but I was surprised to see that in the exception report: C:\TEMP\index_jsp.java:99: cannot resolve symbol ^^^^^^^^ I though Tomcat put all its temporary stuff in the work/directort. I couldn't find any temporary JSP dating from 4.1.24 in TEMP. I don't know yet when this bug was introduced, and will look into the issue. Huh, I look to StandardContext implementation and found to changes between 4.1.24 and 4.1.27 4.1.24 Line 1062 public ServletContext getServletContext() { ... return (context) ; } 4.1.27 Line 1062 public ServletContext getServletContext() { ... return (context.getFacade()) ; } other change is at Line 3363: 4.1.27 public synchronized stop() ... // add listenerStop listenerStop } -- nothing to with current 4.1.x reloading. I extract the 4.1.24 org.apache.catalina.core.StandardContext and copy to 4.1.27 server/classes. Jiep, 4.1.27 reloading working as expected. Testet with a hello world directory deployment. The first change are a internal security fix, but has current a side effect... Peter Thanks for the analysis, and finding out what was causing the issue. I wouldn't have gone in that direction, instead I was suspecting my change to fix STM and webapp reload (I thought it would have caused the wrapper reload to fail). Instead, the safe looking one line change to return a facaded servlet context is what broke reloading. I assume the ContextConfig listener could no longer reset necessary components in the servlet context once the facade was in place. I will make a hotfix available for this bug, and I assume a new 4.1.x release will occur before the end of the month. Done. I added a hotfix package there: http://www.apache.org/dist/jakarta/tomcat-4/binaries/ Check it just to make sure I didn't make any mistakes. Works for me! Thanks a lot! Yep, works for me, too. Ok, thanks. I will post to announcements tomorrow, once the mirrors have synced. I believe the HTML contains explicit enough instructions and details to allow 4.1.27 to live on for a little while, given this is not a security issue. *** Bug 22149 has been marked as a duplicate of this bug. *** *** Bug 22154 has been marked as a duplicate of this bug. *** *** Bug 23506 has been marked as a duplicate of this bug. *** *** Bug 23565 has been marked as a duplicate of this bug. *** *** Bug 23809 has been marked as a duplicate of this bug. *** *** Bug 24121 has been marked as a duplicate of this bug. *** |