Windows 2008 64-bit
Java 1.6.0_16 32-bit
Tomcat 6.0.33
 
Greetings
 
I'm having some difficulties with the above environment and setting unpackWARs 
= "false" antiResourceLocking = "true" with apps packaged as WAR files. It 
appears that Tomcat is attempting to copy the WAR from the 
$CATALINA_HOME/webapps directory to the $CATALINA_HOME/temp directory without 
the .war extension (e.g., original docBase is 
$CATALINA_HOME/webapps/example.war and a new docBase of 
$CATALINA_HOME/temp/1-example ). Is my understanding that with the unpackWARs 
setting set to false, Tomcat just runs directly from the .war? Additionally, 
with the antiResourceLocking set to "true", given the above assumption, would 
it be that Tomcat runs the app from a .war copied wholesale to the temp 
directory? If so, it appears that line 973 in ContextConfig.java method 
antiLocking never evaluates correctly because the docBase gets set to the value 
of path on line 969, which removes the .war extension so the file ends up being 
$CATALINA_HOME/temp/1-example instead of 1-example.war. 
 
Additionally, applications with sub-context paths (e.g., foo#bar.war) never get 
deployed to temp correctly with antiResourceLocking="true" regardless of the 
unpackWARs setting because of the above scenario and because the docBase gets 
set to the context path in the antiLocking method which converts the # 
separator to /. There appears to be a fix on line 882 of fixDocBase that 
converts the / character to # in the path but that doesn't make it to the 
antiLocking method.
 
Please advise if I my understandings/assumptions are incorrect and if so, how I 
might configure Tomcat correctly to run a war without unpacking and locking 
resources. I am also happy to submit a bug report if needed.
 
Thanks in advance
Justin Miller
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to