RE: Context in conf/Catalina/localhost question
NetBeans 6.8 won't even run the webapp within the IDE unless the path attribute is set in META-INF/context.xml I understand why the IDE needs the path to run the webapp from the the NetBeans work directory, but do the NetBeans people talk to the Tomcat people? :) Maybe, the clean and build tool in NetBeans could strip that out when it creates the war file? I'm just saying. People forget. -Original Message- From: Leo Donahue - PLANDEVX [mailto:leodona...@mail.maricopa.gov] Sent: Sunday, May 09, 2010 6:27 PM To: 'Tomcat Users List' Subject: RE: Context in conf/Catalina/localhost question This always happens. Once I send a question I find the answer. Normally I've been copying expanded webapp directories to the webapps folder when I have Tomcat stopped for other server maintenance. I forgot that I experimented with deploying a war file for the apnxy servlet. I'm going to point the finger at NetBeans for adding the path attribute to my context. Tomcat was just doing what it is supposed to under automatic deployment: http://tomcat.apache.org/tomcat-6.0-doc/config/host.html#Automatic%20Application%20Deployment -Original Message- From: Leo Donahue - PLANDEVX [mailto:leodona...@mail.maricopa.gov] Sent: Sunday, May 09, 2010 6:17 PM To: 'Tomcat Users List' Subject: Context in conf/Catalina/localhost question I've noticed that sometimes when I make a change to an existing webapp or deploy a new one, that the file contents created in conf/Catalina/localhost do not match the contents of the context file in META-INF/context.xml of the webapp dir. Tomcat 6.0.24 - still. Upgrade is coming. Example, I added a valve to each of my webapps context.xml to turn on the access logs. The valve was the same for each webap, I only changed the name of the access log file name. Three of four webapps produced a log file, but one webapp would not produce an access log file, no matter how many times I restarted Tomcat - deleted the cache in the work directory and removed previous entries in conf/Catalina/localhost. http://tomcat.apache.org/tomcat-6.0-doc/config/context.html ... You may define as many Context elements as you wish. Each such Context MUST have a unique context path. In addition, a Context must be present with a context path equal to a zero-length string. This Context becomes the default web application for this virtual host, and is used to process all requests that do not match any other Context's context path ... Contents of the apnxy servlet META-INF/context.xml that keep appearing in conf/Catalina/localhost, and I didn't even have the path attribute set in that file: ?xml version=1.0 encoding=UTF-8? Context antiJARLocking=true path=/apnxy /Context I finally just stopped Tomcat, deleted the cache in work dir, renamed and manually copied the apnxy.xml file from META-INF/context.xml to conf/Catalina/localhost and started Tomcat. Access log for apnxy_... appeared. What did I miss? Contents of each access log valve: ?xml version=1.0 encoding=UTF-8? Context antiJARLocking=true !-- Log all requests to Tomcat root -- Valve className=org.apache.catalina.valves.AccessLogValve directory=logs prefix=apnxy_access_log. suffix=.txt pattern=common resolveHosts=false/ /Context Contents of context.xml in conf directory: ?xml version='1.0' encoding='utf-8'? !-- The contents of this file will be loaded for each web application -- Context !-- Default set of monitored resources -- WatchedResourceWEB-INF/web.xml/WatchedResource !-- Uncomment this to disable session persistence across Tomcat restarts -- !-- Manager pathname= / -- !-- Uncomment this to enable Comet connection tacking (provides events on session expiration as well as webapp lifecycle) -- !-- Valve className=org.apache.catalina.valves.CometConnectionManagerValve / -- /Context Leo - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: Context in conf/Catalina/localhost question
NetBeans 6.8 Output window: In-place deployment at C:\NetBeans_Projects\webappname\build\web Cannot deploy the module. The context.xml file seems to be broken. Check whether it is well-formed and valid. C:\NetBeans_Projects\webappname\nbproject\build-impl.xml:584: The module has not been deployed. -Original Message- From: Leo Donahue - PLANDEVX [mailto:leodona...@mail.maricopa.gov] Sent: Monday, May 10, 2010 2:51 PM To: 'Tomcat Users List' Subject: RE: Context in conf/Catalina/localhost question NetBeans 6.8 won't even run the webapp within the IDE unless the path attribute is set in META-INF/context.xml I understand why the IDE needs the path to run the webapp from the the NetBeans work directory, but do the NetBeans people talk to the Tomcat people? :) Maybe, the clean and build tool in NetBeans could strip that out when it creates the war file? I'm just saying. People forget. -Original Message- From: Leo Donahue - PLANDEVX [mailto:leodona...@mail.maricopa.gov] Sent: Sunday, May 09, 2010 6:27 PM To: 'Tomcat Users List' Subject: RE: Context in conf/Catalina/localhost question This always happens. Once I send a question I find the answer. Normally I've been copying expanded webapp directories to the webapps folder when I have Tomcat stopped for other server maintenance. I forgot that I experimented with deploying a war file for the apnxy servlet. I'm going to point the finger at NetBeans for adding the path attribute to my context. Tomcat was just doing what it is supposed to under automatic deployment: http://tomcat.apache.org/tomcat-6.0-doc/config/host.html#Automatic%20Application%20Deployment -Original Message- From: Leo Donahue - PLANDEVX [mailto:leodona...@mail.maricopa.gov] Sent: Sunday, May 09, 2010 6:17 PM To: 'Tomcat Users List' Subject: Context in conf/Catalina/localhost question I've noticed that sometimes when I make a change to an existing webapp or deploy a new one, that the file contents created in conf/Catalina/localhost do not match the contents of the context file in META-INF/context.xml of the webapp dir. Tomcat 6.0.24 - still. Upgrade is coming. Example, I added a valve to each of my webapps context.xml to turn on the access logs. The valve was the same for each webap, I only changed the name of the access log file name. Three of four webapps produced a log file, but one webapp would not produce an access log file, no matter how many times I restarted Tomcat - deleted the cache in the work directory and removed previous entries in conf/Catalina/localhost. http://tomcat.apache.org/tomcat-6.0-doc/config/context.html ... You may define as many Context elements as you wish. Each such Context MUST have a unique context path. In addition, a Context must be present with a context path equal to a zero-length string. This Context becomes the default web application for this virtual host, and is used to process all requests that do not match any other Context's context path ... Contents of the apnxy servlet META-INF/context.xml that keep appearing in conf/Catalina/localhost, and I didn't even have the path attribute set in that file: ?xml version=1.0 encoding=UTF-8? Context antiJARLocking=true path=/apnxy /Context I finally just stopped Tomcat, deleted the cache in work dir, renamed and manually copied the apnxy.xml file from META-INF/context.xml to conf/Catalina/localhost and started Tomcat. Access log for apnxy_... appeared. What did I miss? Contents of each access log valve: ?xml version=1.0 encoding=UTF-8? Context antiJARLocking=true !-- Log all requests to Tomcat root -- Valve className=org.apache.catalina.valves.AccessLogValve directory=logs prefix=apnxy_access_log. suffix=.txt pattern=common resolveHosts=false/ /Context Contents of context.xml in conf directory: ?xml version='1.0' encoding='utf-8'? !-- The contents of this file will be loaded for each web application -- Context !-- Default set of monitored resources -- WatchedResourceWEB-INF/web.xml/WatchedResource !-- Uncomment this to disable session persistence across Tomcat restarts -- !-- Manager pathname= / -- !-- Uncomment this to enable Comet connection tacking (provides events on session expiration as well as webapp lifecycle) -- !-- Valve className=org.apache.catalina.valves.CometConnectionManagerValve / -- /Context Leo - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands
RE: Context in conf/Catalina/localhost question
I just ran a series of tests on my Linux platform. I've not rebooted yet to run this on Windows, but I don't imagine there will be any change. Environment (all 32 bit): OS: Fedora 11 with latest patches Java:JRE / JDK 1.6.0_20 from Sun Tomcat: 6.0.26 installed in my local account for development / testing NetBeans:6.8 installed globally in /opt/netbeans-6.8 Application: DVDStore based on the NetBeans tutorial Scenario 1 a. Start NetBeans b. Load standard project (DVDStore) c. Set as main project d. Run (without building first) Expected result: Browser with new tab containing the application pops up Actual result: Browser with new tab containing the application pops up DVDStore.xml generated in $CATALINA_HOME/conf/Catalina/localhost contains path=/DVDStore and appBase=/home/mdeggers/NB8-Projects/DVDStore/build/web I did not put these entries into web/META-INF/context.xml in the source tree. Right mouse clicking on the project node and selecting clean removes $CATALINA_HOME/conf/Catalina/localhost/DVDStore.xml and all traces of the web application from $CATALINA_HOME/work/Catalina/localhost. Scenario 2 a. Clean and build web application b. Use Tomcat manager to deploy web application (DVDStore) c. Browse to localhost:8080/DVDStore Expected result: Application works as before Actual result: Application works as before Note that in this case, the $CATALINA_HOME/conf/Catalina/localhost/DVDStore.xml file does NOT have the path or docBase attributes in Context. Undeploying via the Tomcat manager cleanly removes all traces (war file, webapps directory, work directory, and DVDStore.xml). Trivial modifications of a JSP file (adding a meta content=blah item) appear immediately in the running application if I started with F6 (run). I did manage to run into the posted exception once, but I have been unable to reproduce it. Cleaning out .netbeans/6.8/var/cache may help. Summary: Do not add appBase and path to META-INF/context.xml in the actual project. NetBeans 6.8 seems to manage that properly (merging existing context.xml information with the path and appBase attributes). . . . . just my two cents /mde/ --- On Mon, 5/10/10, Leo Donahue - PLANDEVX leodona...@mail.maricopa.gov wrote: From: Leo Donahue - PLANDEVX leodona...@mail.maricopa.gov Subject: RE: Context in conf/Catalina/localhost question To: 'Tomcat Users List' users@tomcat.apache.org Date: Monday, May 10, 2010, 3:02 PM NetBeans 6.8 Output window: In-place deployment at C:\NetBeans_Projects\webappname\build\web Cannot deploy the module. The context.xml file seems to be broken. Check whether it is well-formed and valid. C:\NetBeans_Projects\webappname\nbproject\build-impl.xml:584: The module has not been deployed. -Original Message- From: Leo Donahue - PLANDEVX [mailto:leodona...@mail.maricopa.gov] Sent: Monday, May 10, 2010 2:51 PM To: 'Tomcat Users List' Subject: RE: Context in conf/Catalina/localhost question NetBeans 6.8 won't even run the webapp within the IDE unless the path attribute is set in META-INF/context.xml I understand why the IDE needs the path to run the webapp from the the NetBeans work directory, but do the NetBeans people talk to the Tomcat people? :) Maybe, the clean and build tool in NetBeans could strip that out when it creates the war file? I'm just saying. People forget. -Original Message- From: Leo Donahue - PLANDEVX [mailto:leodona...@mail.maricopa.gov] Sent: Sunday, May 09, 2010 6:27 PM To: 'Tomcat Users List' Subject: RE: Context in conf/Catalina/localhost question This always happens. Once I send a question I find the answer. Normally I've been copying expanded webapp directories to the webapps folder when I have Tomcat stopped for other server maintenance. I forgot that I experimented with deploying a war file for the apnxy servlet. I'm going to point the finger at NetBeans for adding the path attribute to my context. Tomcat was just doing what it is supposed to under automatic deployment: http://tomcat.apache.org/tomcat-6.0-doc/config/host.html#Automatic%20Application%20Deployment -Original Message- From: Leo Donahue - PLANDEVX [mailto:leodona...@mail.maricopa.gov] Sent: Sunday, May 09, 2010 6:17 PM To: 'Tomcat Users List' Subject: Context in conf/Catalina/localhost question I've noticed that sometimes when I make a change to an existing webapp or deploy a new one, that the file contents created in conf/Catalina/localhost do not match the contents of the context file in META-INF/context.xml of the webapp dir. Tomcat 6.0.24 - still. Upgrade is coming. Example, I added a valve to each of my webapps context.xml to turn on the access logs. The valve was the same for each webap, I only changed the name of the access log file name. Three of four webapps produced a log file, but one webapp would not produce an access log file, no matter how many times I
RE: Context in conf/Catalina/localhost question
This always happens. Once I send a question I find the answer. Normally I've been copying expanded webapp directories to the webapps folder when I have Tomcat stopped for other server maintenance. I forgot that I experimented with deploying a war file for the apnxy servlet. I'm going to point the finger at NetBeans for adding the path attribute to my context. Tomcat was just doing what it is supposed to under automatic deployment: http://tomcat.apache.org/tomcat-6.0-doc/config/host.html#Automatic%20Application%20Deployment -Original Message- From: Leo Donahue - PLANDEVX [mailto:leodona...@mail.maricopa.gov] Sent: Sunday, May 09, 2010 6:17 PM To: 'Tomcat Users List' Subject: Context in conf/Catalina/localhost question I've noticed that sometimes when I make a change to an existing webapp or deploy a new one, that the file contents created in conf/Catalina/localhost do not match the contents of the context file in META-INF/context.xml of the webapp dir. Tomcat 6.0.24 - still. Upgrade is coming. Example, I added a valve to each of my webapps context.xml to turn on the access logs. The valve was the same for each webap, I only changed the name of the access log file name. Three of four webapps produced a log file, but one webapp would not produce an access log file, no matter how many times I restarted Tomcat - deleted the cache in the work directory and removed previous entries in conf/Catalina/localhost. http://tomcat.apache.org/tomcat-6.0-doc/config/context.html ... You may define as many Context elements as you wish. Each such Context MUST have a unique context path. In addition, a Context must be present with a context path equal to a zero-length string. This Context becomes the default web application for this virtual host, and is used to process all requests that do not match any other Context's context path ... Contents of the apnxy servlet META-INF/context.xml that keep appearing in conf/Catalina/localhost, and I didn't even have the path attribute set in that file: ?xml version=1.0 encoding=UTF-8? Context antiJARLocking=true path=/apnxy /Context I finally just stopped Tomcat, deleted the cache in work dir, renamed and manually copied the apnxy.xml file from META-INF/context.xml to conf/Catalina/localhost and started Tomcat. Access log for apnxy_... appeared. What did I miss? Contents of each access log valve: ?xml version=1.0 encoding=UTF-8? Context antiJARLocking=true !-- Log all requests to Tomcat root -- Valve className=org.apache.catalina.valves.AccessLogValve directory=logs prefix=apnxy_access_log. suffix=.txt pattern=common resolveHosts=false/ /Context Contents of context.xml in conf directory: ?xml version='1.0' encoding='utf-8'? !-- The contents of this file will be loaded for each web application -- Context !-- Default set of monitored resources -- WatchedResourceWEB-INF/web.xml/WatchedResource !-- Uncomment this to disable session persistence across Tomcat restarts -- !-- Manager pathname= / -- !-- Uncomment this to enable Comet connection tacking (provides events on session expiration as well as webapp lifecycle) -- !-- Valve className=org.apache.catalina.valves.CometConnectionManagerValve / -- /Context Leo - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org