You should have the *customer* add these to the global data sources, using the admin tool, or by adding the xml fragments (you can ship) to server.xml themselves.
Tim -----Original Message----- From: Darren [mailto:[EMAIL PROTECTED] Sent: Friday, February 17, 2006 11:00 AM To: users@tomcat.apache.org Subject: Where to place JNDI sections for customer deployment Hi, I am running Tomcat 5.5.9 and would like to deploy an application (as a war file) to various customers, but I am having trouble finding the best place for JNDI lookups. During development I kept everything inside the war file and placed my JNDI entries in $WAR/META-INF/ context.xml, but I don't want customers to have to edit the context.xml in the war file on their systems. So, I added the following into $WAR/WEB_INF/web.xml <resource-ref> <description>DB Connection</description> <res-ref-name>jdbc/db</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> <resource-ref> <description>Email Server Settings</description> <res-ref-name>bean/email</res-ref-name> <res-type>somepackage.EmailServerConfiguration</res-type> <res-auth>Container</res-auth> </resource-ref> Now I am unsure where to add the following .... <Context path="/mycontext" docBase="mycontext" crossContext="true" reloadable="true" debug="1"> <Resource name="jdbc/db" auth="Container" type="javax.sql.DataSource" maxActive="10" maxIdle="15" maxWait="10000" removeAbandoned="true" removeAbandonedTimeout="300" logAbandoned="true" driverClassName="com.mysql.jdbc.Driver" username="user" password="pass" url="jdbc:mysql://localhost:3306/db? autoReconnect=true" /> <Resource name="bean/email" auth="Container" type="somepackage.EmailServerConfiguration" factory="org.apache.naming.factory.BeanFactory" host="localhost" port="25" /> </Context> I tried adding it into $CATALINA/conf/server.xml inside the following host definition <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> but this meant the mycontext application was always visible in the manager and did not autodeploy when a war file was placed in $CATALINA/webapps (undeploy didn't appear to work either). I tried without the Context wrapper and the JNDI lookups failed. I see when an application is deployed tomcat makes it's own context configuration within $CATALINA/conf/Catalina/$HOST/$CONTEXT.xml which appears a good place to put the JNDI lookups. Only problem is this file is removed by tomcat when the application is undeployed. Am sure there must be a standard solution to this, so can anyone tell me how it is 'meant' to be done? Thanks, Darren --------------------------------------------------------------------- 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]