RE: root context loaded again under its docbase name
I definitely have the same problem. And Tomcat does not execute context.xml. I presume is due to the error message: context already in use. Do you have the some problem? Hernani -Original Message- From: Adam Hardy [mailto:[EMAIL PROTECTED] Sent: sabado, 7 de Fevereiro de 2004 12:47 To: Tomcat Users List Subject: root context loaded again under its docbase name I've seen and asked about this about a year ago but since it wasn't important, I didn't bother chasing it up when I found no solution. It's happening again. Tomcat loads my context twice. Once for root and once with the name of its WAR file. My war file is called gargantus.war. This is my Host: Host name=localhost appBase=webapps unpackWARs=false autoDeploy=false deployXML=true and this is my context (which is found in META-INF/context.xml): Context path= docBase=gargantus.war cachingAllowed=false reloadable=false Anybody else with the same setup see this? Bug or not bug? Interestingly tomcat creates working files in work/Catalina/localhost/_/ AND in work/Catalina/localhost/gargantus/ even when I only access the root context. Adam -- struts 1.1 + tomcat 5.0.16 + java 1.4.2 Linux 2.4.20 Debian - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: JNDI datasource lost on redeploy
Hi there, I have the same problem . . . . But by no means I manage to get the context.xml file processed: some parameters donnot make any change when I check in Admin. I am using W2K and Ant makes meta-inf in lower case. Would that be the problem? I already did every test and nothing seems to work. I have already set unpackWARs to false which improved the way the app is loaded. Any help will be very much appreciated. Thanks, Hernani -Original Message- From: Burgess, Jay S [mailto:[EMAIL PROTECTED] Sent: quinta-feira, 5 de Fevereiro de 2004 23:48 To: Tomcat Users List Subject: RE: JNDI datasource lost on redeploy Having just gone through this headache last week, I can provide a solution that works for me (for TC5 only!). First, create a file called context.xml and put it in a directory called META-INF at the same level in your source hierarchy as WEB-INF. context.xml should contain your Context and Resource definitions, something like: Context path=/proto docBase=proto.war override=true cachingAllowed=true useNaming=true reloadable=false debug=0 Resource name=jdbc/protodb auth=Container type=javax.sql.DataSource / ResourceParams name=jdbc/protodb ... Second, make sure your web.xml file contains the necessary resource-ref details: resource-ref res-ref-namejdbc/protodb/res-ref-name res-typejavax.sql.DataSource/res-type res-authContainer/res-auth /resource-ref Third, use the Tomcat Ant tasks to undeploy/deploy your WAR to the appbase directory: undeploy path=/${app.name} url=${manager.url} username=${manager.username} password=${manager.password} / deploy url=${manager.url} username=${manager.username} password=${manager.password} path=/${app.name} war=file:///${dist.home}/${app.name}.war / Note that I also have unpackWARs set to false in server.xml, so that the WAR is left intact. I noticed that when using this setup, Tomcat pulls context.xml out of the WAR, renames it app name.war, and puts it into the %CATALINA_HOME%/conf/Catalina/localhost directory. I just it alone, as it goes away on undeploy. Let me know if this doesn't work for you. Jay -Original Message- From: todd runstein [mailto:[EMAIL PROTECTED] Sent: Thursday, February 05, 2004 4:51 PM To: [EMAIL PROTECTED] Subject: JNDI datasource lost on redeploy I've set up a JNDI datasource on my test server that works just fine (Tomcat=5.0.18, JDK=1.4.1, RedHat=8, M$_SQL=2000). However, each time I recompile and redeploy the application, I lose my connection pool, recieving the Cannot create JDBC driver of class '' for connect URL 'null' error. I have to restart Tomcat to get it working again. This sort of makes sense, since I'm defining the Resource within a Context in server.xml. It seems that I either need to make the resource globally available to every web app, or move the resource definition to within my web app. Unfortunately, I don't know what to move or where to move it or what options might work. Any advice or suggestions? I'm including all the code used to get the connection as it stands now. Again, this currently works up until I try to redeploy the web app. My driver jars (there are 3 for MS SQL) are in $CATALINA_HOME/common/lib server.xml: Context path=/mfgreports docBase=mfgreports debug=5 Resource name=datasource.testtrk.circuits auth=Container type=javax.sql.DataSource / ResourceParams name=datasource.testtrk.circuits parameter namefactory/name valueorg.apache.commons.dbcp.BasicDataSourceFactory/value /parameter . parameter namedriverClassName/name valuecom.microsoft.jdbc.sqlserver.SQLServerDriver/value /parameter parameter nameurl/name valuejdbc:microsoft:sqlserver://testtrk:1433;databasename=Circuits/va lue /parameter /ResourceParams /Context web.xml: resource-ref res-ref-namedatasource.testtrk.circuits/res-ref-name res-typejavax.sql.DataSource/res-type res-authContainer/res-auth /resource-ref Code used to get connection: public class JNDIConnection { public static Connection getConnection(String datasource) throws NamingException, SQLException{ Context ctx = new InitialContext(); //This syntax is a bit different than the docs show, but it appears to be working DataSource ds = (DataSource)ctx.lookup(java:comp/env/+datasource); return ds.getConnection(); } } Thanks again! = The only dumb question is the one you were too afraid to ask. Check out RouteRuler - Free software for runners, cyclists, walkers, etc. http://routeruler.sourceforge.net
RE: JNDI datasource lost on redeploy
thanks anyway: it did help me for changing the focus into another possible reason: now I have the META-INF in uppercase. I just changed a setting in winzip and it went ok. But my problem steel remains. The context.xml simply does not execute. Hernani -Original Message- From: todd runstein [mailto:[EMAIL PROTECTED] Sent: sexta-feira, 6 de Fevereiro de 2004 0:50 To: Tomcat Users List Subject: RE: JNDI datasource lost on redeploy Don't know if this is the reason, but this is from the ant manuals war task entry: We regulary receive bug reports that this task is creating the WEB-INF directory, and thus it is our fault your webapp doesn't work. The cause of these complaints lies in WinZip, which turns an all upper-case directory into an all lower case one in a fit of helpfulness. Please check that jar xvf yourwebapp.war shows the same behaviour before filing another report. --- Hernani_Mourao [EMAIL PROTECTED] wrote: Hi there, I have the same problem . . . . But by no means I manage to get the context.xml file processed: some parameters donnot make any change when I check in Admin. I am using W2K and Ant makes meta-inf in lower case. Would that be the problem? I already did every test and nothing seems to work. I have already set unpackWARs to false which improved the way the app is loaded. Any help will be very much appreciated. Thanks, Hernani -Original Message- From: Burgess, Jay S [mailto:[EMAIL PROTECTED] Sent: quinta-feira, 5 de Fevereiro de 2004 23:48 To: Tomcat Users List Subject: RE: JNDI datasource lost on redeploy Having just gone through this headache last week, I can provide a solution that works for me (for TC5 only!). First, create a file called context.xml and put it in a directory called META-INF at the same level in your source hierarchy as WEB-INF. context.xml should contain your Context and Resource definitions, something like: Context path=/proto docBase=proto.war override=true cachingAllowed=true useNaming=true reloadable=false debug=0 Resource name=jdbc/protodb auth=Container type=javax.sql.DataSource / ResourceParams name=jdbc/protodb ... Second, make sure your web.xml file contains the necessary resource-ref details: resource-ref res-ref-namejdbc/protodb/res-ref-name res-typejavax.sql.DataSource/res-type res-authContainer/res-auth /resource-ref Third, use the Tomcat Ant tasks to undeploy/deploy your WAR to the appbase directory: undeploy path=/${app.name} url=${manager.url} username=${manager.username} password=${manager.password} / deploy url=${manager.url} username=${manager.username} password=${manager.password} path=/${app.name} war=file:///${dist.home}/${app.name}.war / Note that I also have unpackWARs set to false in server.xml, so that the WAR is left intact. I noticed that when using this setup, Tomcat pulls context.xml out of the WAR, renames it app name.war, and puts it into the %CATALINA_HOME%/conf/Catalina/localhost directory. I just it alone, as it goes away on undeploy. Let me know if this doesn't work for you. Jay -Original Message- From: todd runstein [mailto:[EMAIL PROTECTED] Sent: Thursday, February 05, 2004 4:51 PM To: [EMAIL PROTECTED] Subject: JNDI datasource lost on redeploy I've set up a JNDI datasource on my test server that works just fine (Tomcat=5.0.18, JDK=1.4.1, RedHat=8, M$_SQL=2000). However, each time I recompile and redeploy the application, I lose my connection pool, recieving the Cannot create JDBC driver of class '' for connect URL 'null' error. I have to restart Tomcat to get it working again. This sort of makes sense, since I'm defining the Resource within a Context in server.xml. It seems that I either need to make the resource globally available to every web app, or move the resource definition to within my web app. Unfortunately, I don't know what to move or where to move it or what options might work. Any advice or suggestions? I'm including all the code used to get the connection as it stands now. Again, this currently works up until I try to redeploy the web app. My driver jars (there are 3 for MS SQL) are in $CATALINA_HOME/common/lib server.xml: Context path=/mfgreports docBase=mfgreports debug=5 Resource name=datasource.testtrk.circuits auth=Container type=javax.sql.DataSource / ResourceParams name=datasource.testtrk.circuits parameter namefactory/name valueorg.apache.commons.dbcp.BasicDataSourceFactory/value /parameter . parameter namedriverClassName/name valuecom.microsoft.jdbc.sqlserver.SQLServerDriver/value /parameter parameter nameurl/name
RE: Which directory for web.xml?
in APPLICATION_ROOT\WEB-INF -Original Message- From: Phil Campaigne [mailto:[EMAIL PROTECTED] Sent: quarta-feira, 4 de Fevereiro de 2004 17:45 To: Tomcat Users List Subject: Which directory for web.xml? Hi All, When an application is deployed on tomcat, which directory should web.xml be in? thanks, Phil - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Tomcat Loads Deleted Context?
Hi, Where can I find the Senor Epstein's description of what constitutes a deleted webapp? I looked everywhere I remembered and I could not find. Thanks in advance, Hernani -Original Message- From: Shapira, Yoav [mailto:[EMAIL PROTECTED] Sent: quarta-feira, 4 de Fevereiro de 2004 20:47 To: Tomcat Users List Subject: RE: Tomcat Loads Deleted Context? Howdy, This is new functionality to tomcat5. Senor Epstein's description of what constitutes a deleted webapp is accurate and well-written. If you happen to think tomcat should refresh its conf directory periodically or upon some trigger, please feel free to contribute a patch ;) Yoav Shapira Millennium ChemInformatics -Original Message- From: Yansheng Lin [mailto:[EMAIL PROTECTED] Sent: Wednesday, February 04, 2004 3:20 PM To: 'Tomcat Users List' Subject: RE: Tomcat Loads Deleted Context? Hi, No, I didn't create the context configuration file under /conf/[enginename]/[hostname]/. It was created by Tomcat on the fly. And my webapp wasn't starting up twice, which is good. Also I can delete that dir, but it would be recreated next time when I restart Tomcat5. I think the confusion lies on whether it's user's responsibily or the container's to clean up the configuration file after user deleting a context element in server.xml. In tomcat user-guide: http://jakarta.apache.org/tomcat/tomcat-5.0-doc/deployer-howto.html, there is nothing about when a context descriptor is created, and what happens if you decide to delete a context in your server.xml. It would be nice if the container refreshes that directory/recreates all the context descriptors when server.xml is modified. But maybe there is some other setting I don't know of in 5. I didnt' have this problem with tomcat 4 before. Thanks! -Yan -Original Message- From: Milt Epstein [mailto:[EMAIL PROTECTED] Sent: Wednesday, February 04, 2004 12:12 PM To: Tomcat Users List Subject: RE: Tomcat Loads Deleted Context? I removed the Context for that webapp in conf/server.xml. Hmmm -- you had a Context element for this webapp in server.xml *and* a separate context configuration file? That's redundant, because they serve the same purpose. I'm not sure what would happen in that case -- were you per chance seeing your webapp starting up twice? - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] This e-mail, including any attachments, is a confidential business communication, and may contain information that is confidential, proprietary and/or privileged. This e-mail is intended only for the individual(s) to whom it is addressed, and may not be saved, copied, printed, disclosed or used by anyone else. If you are not the(an) intended recipient, please immediately delete this e-mail from your computer system and notify the sender. Thank you. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]