Re: where to place context configuration

2008-08-15 Thread Christopher Schultz
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Len,

Len Popp wrote:
 So, the server admin can configure the DB server etc. by editing the
 file under the conf dir, but every time they deploy a new version of
 the app the settings are auto-wiped?

No. Ideally, the server admin sets up data sources in server.xml and
then the webapps use web.xml (or context.xml) and resource-ref. You
certainly don't want devs overwriting admin settings.

- -chris
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.9 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkilmUYACgkQ9CaO5/Lv0PAIBQCfdKyLoxfV7YlNpDAsZN6IJsr9
LBwAoKQuAQSSf+ToToKYghhWtgP4ZMyF
=olhN
-END PGP SIGNATURE-

-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: where to place context configuration

2008-08-15 Thread Len Popp
Thanks for reminding me about resource-ref. I don't think that putting
app-specific settings in server.xml is ideal - I'd rather have the
per-app config files - but I can see that would get around the issues
I'm complaining about.
-- 
Len

On Fri, Aug 15, 2008 at 10:57, Christopher Schultz
[EMAIL PROTECTED] wrote:
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1

 Len,

 Len Popp wrote:
 So, the server admin can configure the DB server etc. by editing the
 file under the conf dir, but every time they deploy a new version of
 the app the settings are auto-wiped?

 No. Ideally, the server admin sets up data sources in server.xml and
 then the webapps use web.xml (or context.xml) and resource-ref. You
 certainly don't want devs overwriting admin settings.

 - -chris
 -BEGIN PGP SIGNATURE-
 Version: GnuPG v1.4.9 (MingW32)
 Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

 iEYEARECAAYFAkilmUYACgkQ9CaO5/Lv0PAIBQCfdKyLoxfV7YlNpDAsZN6IJsr9
 LBwAoKQuAQSSf+ToToKYghhWtgP4ZMyF
 =olhN
 -END PGP SIGNATURE-

 -
 To start a new topic, e-mail: users@tomcat.apache.org
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: where to place context configuration

2008-08-14 Thread Mark Thomas
Robert Dietrick wrote:
 Hi,
 
 I just noticed that I had a Context definition in both
 $CATALINA_HOME/conf/Catalina/localhost/mywebapp.xml and in
 $CATALINA_HOME/webapps/mywebapp.war/META-INF/context.xml.  In both of
 these context definitions, I define a JNDI database connection pool
 with the same name and identical parameters.  This was working fine,
 but it is confusing, redundant, and runs contrary to the
 recommendations in the official documentation.
 
 However, if i remove either one of these files, I get the dreaded
 Cannot create JDBC driver of class '' for connect URL 'null' error.
 Can anyone offer any advice?

Just leave it as is?

The one in conf will take priority.

Mark


-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: where to place context configuration

2008-08-14 Thread Robert Dietrick
I would very much prefer to use only the one in
mywebapp/META-INF/contex.xml, as this is much less invasive (does not
require changing/adding anything to tomcat's global config
directories).  But this doesn't seem to work.

I can leave it as is (and am becoming resigned to the fact that this
is my only option), but this is sort of a maintenance nightmare since
the two files need to be kept in sync.  Plus, it just seems idiotic to
need to declare the context and its resources in two locations.

Does either of these files need a 'docBase' or 'path' parameter?  It
doesn't seem to make a difference either way.

-rob

On Thu, Aug 14, 2008 at 11:00 AM, Mark Thomas [EMAIL PROTECTED] wrote:
 Robert Dietrick wrote:
 Hi,

 I just noticed that I had a Context definition in both
 $CATALINA_HOME/conf/Catalina/localhost/mywebapp.xml and in
 $CATALINA_HOME/webapps/mywebapp.war/META-INF/context.xml.  In both of
 these context definitions, I define a JNDI database connection pool
 with the same name and identical parameters.  This was working fine,
 but it is confusing, redundant, and runs contrary to the
 recommendations in the official documentation.

 However, if i remove either one of these files, I get the dreaded
 Cannot create JDBC driver of class '' for connect URL 'null' error.
 Can anyone offer any advice?

 Just leave it as is?

 The one in conf will take priority.

 Mark


 -
 To start a new topic, e-mail: users@tomcat.apache.org
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: where to place context configuration

2008-08-14 Thread Angus Mezick
Am I the only one that is REALLY disturbed about that idea of REQUIRING
two identical files to run an app?  One in the war file and one in the
conf directory?  If the only in the conf directory takes priority, why
the one in the war file needed at all?  I am just hoping this isn't in
tomcat 6.0..  The idea of relying on the server to use the correct
version of possibly different files in a production server makes me VERY
nervous.

--Angus Mezick

-Original Message-
From: Robert Dietrick [mailto:[EMAIL PROTECTED] 
Sent: Thursday, August 14, 2008 2:22 PM
To: Tomcat Users List
Subject: Re: where to place context configuration

I would very much prefer to use only the one in
mywebapp/META-INF/contex.xml, as this is much less invasive (does not
require changing/adding anything to tomcat's global config
directories).  But this doesn't seem to work.

I can leave it as is (and am becoming resigned to the fact that this
is my only option), but this is sort of a maintenance nightmare since
the two files need to be kept in sync.  Plus, it just seems idiotic to
need to declare the context and its resources in two locations.

Does either of these files need a 'docBase' or 'path' parameter?  It
doesn't seem to make a difference either way.

-rob

On Thu, Aug 14, 2008 at 11:00 AM, Mark Thomas [EMAIL PROTECTED] wrote:
 Robert Dietrick wrote:
 Hi,

 I just noticed that I had a Context definition in both
 $CATALINA_HOME/conf/Catalina/localhost/mywebapp.xml and in
 $CATALINA_HOME/webapps/mywebapp.war/META-INF/context.xml.  In both of
 these context definitions, I define a JNDI database connection pool
 with the same name and identical parameters.  This was working fine,
 but it is confusing, redundant, and runs contrary to the
 recommendations in the official documentation.

 However, if i remove either one of these files, I get the dreaded
 Cannot create JDBC driver of class '' for connect URL 'null' error.
 Can anyone offer any advice?

 Just leave it as is?

 The one in conf will take priority.

 Mark


 -
 To start a new topic, e-mail: users@tomcat.apache.org
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: where to place context configuration

2008-08-14 Thread Robert Dietrick
You are definitely not alone, Angus.  For the record, I'm using Tomcat 5.5.

-rob

On Thu, Aug 14, 2008 at 11:30 AM, Angus Mezick
[EMAIL PROTECTED] wrote:
 Am I the only one that is REALLY disturbed about that idea of REQUIRING
 two identical files to run an app?  One in the war file and one in the
 conf directory?  If the only in the conf directory takes priority, why
 the one in the war file needed at all?  I am just hoping this isn't in
 tomcat 6.0..  The idea of relying on the server to use the correct
 version of possibly different files in a production server makes me VERY
 nervous.

 --Angus Mezick

 -Original Message-
 From: Robert Dietrick [mailto:[EMAIL PROTECTED]
 Sent: Thursday, August 14, 2008 2:22 PM
 To: Tomcat Users List
 Subject: Re: where to place context configuration

 I would very much prefer to use only the one in
 mywebapp/META-INF/contex.xml, as this is much less invasive (does not
 require changing/adding anything to tomcat's global config
 directories).  But this doesn't seem to work.

 I can leave it as is (and am becoming resigned to the fact that this
 is my only option), but this is sort of a maintenance nightmare since
 the two files need to be kept in sync.  Plus, it just seems idiotic to
 need to declare the context and its resources in two locations.

 Does either of these files need a 'docBase' or 'path' parameter?  It
 doesn't seem to make a difference either way.

 -rob

 On Thu, Aug 14, 2008 at 11:00 AM, Mark Thomas [EMAIL PROTECTED] wrote:
 Robert Dietrick wrote:
 Hi,

 I just noticed that I had a Context definition in both
 $CATALINA_HOME/conf/Catalina/localhost/mywebapp.xml and in
 $CATALINA_HOME/webapps/mywebapp.war/META-INF/context.xml.  In both of
 these context definitions, I define a JNDI database connection pool
 with the same name and identical parameters.  This was working fine,
 but it is confusing, redundant, and runs contrary to the
 recommendations in the official documentation.

 However, if i remove either one of these files, I get the dreaded
 Cannot create JDBC driver of class '' for connect URL 'null' error.
 Can anyone offer any advice?

 Just leave it as is?

 The one in conf will take priority.

 Mark


 -
 To start a new topic, e-mail: users@tomcat.apache.org
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



 -
 To start a new topic, e-mail: users@tomcat.apache.org
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]


 -
 To start a new topic, e-mail: users@tomcat.apache.org
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: where to place context configuration

2008-08-14 Thread Guojun Zhu
I am not sure about the second case.  But I don't have context.xml in the
war (META-INF/ directory)  and the application works fine for me.

On Thu, Aug 14, 2008 at 1:30 PM, Angus Mezick [EMAIL PROTECTED]
 wrote:

 Am I the only one that is REALLY disturbed about that idea of REQUIRING
 two identical files to run an app?  One in the war file and one in the
 conf directory?  If the only in the conf directory takes priority, why
 the one in the war file needed at all?  I am just hoping this isn't in
 tomcat 6.0..  The idea of relying on the server to use the correct
 version of possibly different files in a production server makes me VERY
 nervous.

 --Angus Mezick

 -Original Message-
 From: Robert Dietrick [mailto:[EMAIL PROTECTED]
 Sent: Thursday, August 14, 2008 2:22 PM
 To: Tomcat Users List
 Subject: Re: where to place context configuration

 I would very much prefer to use only the one in
 mywebapp/META-INF/contex.xml, as this is much less invasive (does not
 require changing/adding anything to tomcat's global config
 directories).  But this doesn't seem to work.

 I can leave it as is (and am becoming resigned to the fact that this
 is my only option), but this is sort of a maintenance nightmare since
 the two files need to be kept in sync.  Plus, it just seems idiotic to
 need to declare the context and its resources in two locations.

 Does either of these files need a 'docBase' or 'path' parameter?  It
 doesn't seem to make a difference either way.

 -rob

 On Thu, Aug 14, 2008 at 11:00 AM, Mark Thomas [EMAIL PROTECTED] wrote:
  Robert Dietrick wrote:
  Hi,
 
  I just noticed that I had a Context definition in both
  $CATALINA_HOME/conf/Catalina/localhost/mywebapp.xml and in
  $CATALINA_HOME/webapps/mywebapp.war/META-INF/context.xml.  In both of
  these context definitions, I define a JNDI database connection pool
  with the same name and identical parameters.  This was working fine,
  but it is confusing, redundant, and runs contrary to the
  recommendations in the official documentation.
 
  However, if i remove either one of these files, I get the dreaded
  Cannot create JDBC driver of class '' for connect URL 'null' error.
  Can anyone offer any advice?
 
  Just leave it as is?
 
  The one in conf will take priority.
 
  Mark
 
 
  -
  To start a new topic, e-mail: users@tomcat.apache.org
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 
 

 -
 To start a new topic, e-mail: users@tomcat.apache.org
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]


 -
 To start a new topic, e-mail: users@tomcat.apache.org
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]




Re: where to place context configuration

2008-08-14 Thread Mark Thomas
Robert Dietrick wrote:
 I would very much prefer to use only the one in
 mywebapp/META-INF/contex.xml, as this is much less invasive (does not
 require changing/adding anything to tomcat's global config
 directories).  But this doesn't seem to work.

That isn't the way it is designed.
 
 I can leave it as is (and am becoming resigned to the fact that this
 is my only option), but this is sort of a maintenance nightmare since
 the two files need to be kept in sync.  Plus, it just seems idiotic to
 need to declare the context and its resources in two locations.

The way it works (ignoring
https://issues.apache.org/bugzilla/show_bug.cgi?id=42747) is:

- drop in war
- if META-INF/context.xml exists, it is copied to conf
- the version in conf then always takes priority
- edit version in conf if you need to change the config
- war automatically reloads
- drop in new war
- war automatically reloads
- any META-INF/context.xml is ignored
- undeploy war, file in conf is deleted.

The reason it is designed this was is so that you can edit context.xml to
non-default settings without them getting trashed every time you update the
war.

 Does either of these files need a 'docBase' or 'path' parameter?  It
 doesn't seem to make a difference either way.

No. They should be ignored if present but it is better not to specify them.
The name of the war determines the context path.

Mark



-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: where to place context configuration

2008-08-14 Thread Caldarale, Charles R
 From: Robert Dietrick [mailto:[EMAIL PROTECTED]
 Subject: Re: where to place context configuration

 I would very much prefer to use only the one in
 mywebapp/META-INF/contex.xml

I hope the above is a typo, because if it's really in contex.xml Tomcat won't 
look at it.

 But this doesn't seem to work.

It works fine for me; I put the Context element in one location or the other, 
not both.  Note that Tomcat will sometimes copy the one from 
META-INF/context.xml into conf/Catalina/[host]/[appName].xml during a 
deployment, and that's likely what you're seeing.

 Plus, it just seems idiotic to need to declare the context
 and its resources in two locations.

Never had to do that.  Suggest that you stop Tomcat, remove the one in 
conf/Catalina/[host], clean out the work directory for the webapp, clean out 
the expanded webapp so all you have left is the .war file, and restart Tomcat.  
You will likely see the one in conf/Catalina/[host] recreated from the 
META-INF/context.xml, since Tomcat wants to be able to read the file directly.  
A real undeployment of the webapp should delete the one in 
conf/Catalina/[host]; if you're updating the .war without doing an undeployment 
first, you're breaking the rules, and all bets are off.

 Does either of these files need a 'docBase' or 'path' parameter?  It
 doesn't seem to make a difference either way.

You may not use path or docBase in either location; if you're lucky, they'll 
just be ignored - don't chance it.

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY 
MATERIAL and is thus for use only by the intended recipient. If you received 
this in error, please contact the sender and delete the e-mail and its 
attachments from all computers.

-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: where to place context configuration

2008-08-14 Thread Len Popp
What you're missing is how Tomcat copies the META-INF/context.xml file
to conf/localhost/Catalina/mywebapp.xml under some circumstances. (Not
surprising that you missed this, since it doesn't seem to be mentioned
in the Tomcat docs.)

One guess is that context.xml is copied into the conf directory if it
doesn't already exist there, but I'm not sure about that.
-- 
Len



On Thu, Aug 14, 2008 at 14:35, Robert Dietrick [EMAIL PROTECTED] wrote:
 You are definitely not alone, Angus.  For the record, I'm using Tomcat 5.5.

 -rob

 On Thu, Aug 14, 2008 at 11:30 AM, Angus Mezick
 [EMAIL PROTECTED] wrote:
 Am I the only one that is REALLY disturbed about that idea of REQUIRING
 two identical files to run an app?  One in the war file and one in the
 conf directory?  If the only in the conf directory takes priority, why
 the one in the war file needed at all?  I am just hoping this isn't in
 tomcat 6.0..  The idea of relying on the server to use the correct
 version of possibly different files in a production server makes me VERY
 nervous.

 --Angus Mezick

 -Original Message-
 From: Robert Dietrick [mailto:[EMAIL PROTECTED]
 Sent: Thursday, August 14, 2008 2:22 PM
 To: Tomcat Users List
 Subject: Re: where to place context configuration

 I would very much prefer to use only the one in
 mywebapp/META-INF/contex.xml, as this is much less invasive (does not
 require changing/adding anything to tomcat's global config
 directories).  But this doesn't seem to work.

 I can leave it as is (and am becoming resigned to the fact that this
 is my only option), but this is sort of a maintenance nightmare since
 the two files need to be kept in sync.  Plus, it just seems idiotic to
 need to declare the context and its resources in two locations.

 Does either of these files need a 'docBase' or 'path' parameter?  It
 doesn't seem to make a difference either way.

 -rob

 On Thu, Aug 14, 2008 at 11:00 AM, Mark Thomas [EMAIL PROTECTED] wrote:
 Robert Dietrick wrote:
 Hi,

 I just noticed that I had a Context definition in both
 $CATALINA_HOME/conf/Catalina/localhost/mywebapp.xml and in
 $CATALINA_HOME/webapps/mywebapp.war/META-INF/context.xml.  In both of
 these context definitions, I define a JNDI database connection pool
 with the same name and identical parameters.  This was working fine,
 but it is confusing, redundant, and runs contrary to the
 recommendations in the official documentation.

 However, if i remove either one of these files, I get the dreaded
 Cannot create JDBC driver of class '' for connect URL 'null' error.
 Can anyone offer any advice?

 Just leave it as is?

 The one in conf will take priority.

 Mark


 -
 To start a new topic, e-mail: users@tomcat.apache.org
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



 -
 To start a new topic, e-mail: users@tomcat.apache.org
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]


 -
 To start a new topic, e-mail: users@tomcat.apache.org
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



 -
 To start a new topic, e-mail: users@tomcat.apache.org
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: where to place context configuration

2008-08-14 Thread Caldarale, Charles R
 From: Angus Mezick [mailto:[EMAIL PROTECTED]
 Subject: RE: where to place context configuration

 Am I the only one that is REALLY disturbed about that idea of
 REQUIRING two identical files to run an app?

Probably, because Tomcat does not require that.  You may place the Context 
element in either location, but Tomcat *may* copy the one from 
META-INF/context.xml to conf/Catalina/[host] so it can access it directly.  
Proper undeployment will remove the copy.  If you're doing a brute force 
replacement of a .war rather than a real undeployment, you deserve what you get.

You have the option of placing the webapp's Context element in 
conf/Catalina/[host]/[appName].xml so that you can override the one packaged in 
the .war file - often necessary with prepackaged apps that might require 
special configuration for a particular site.

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY 
MATERIAL and is thus for use only by the intended recipient. If you received 
this in error, please contact the sender and delete the e-mail and its 
attachments from all computers.

-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: where to place context configuration

2008-08-14 Thread Len Popp
So, the server admin can configure the DB server etc. by editing the
file under the conf dir, but every time they deploy a new version of
the app the settings are auto-wiped?

Setting aside for the moment what you think I deserve...
That's far from ideal in an environment where the developers and the
server admins are not within shouting distance. (Such as where I
work.)
-- 
Len

On Thu, Aug 14, 2008 at 14:57, Caldarale, Charles R
[EMAIL PROTECTED] wrote:
 From: Angus Mezick [mailto:[EMAIL PROTECTED]
 Subject: RE: where to place context configuration

 Am I the only one that is REALLY disturbed about that idea of
 REQUIRING two identical files to run an app?

 Probably, because Tomcat does not require that.  You may place the Context 
 element in either location, but Tomcat *may* copy the one from 
 META-INF/context.xml to conf/Catalina/[host] so it can access it directly.  
 Proper undeployment will remove the copy.  If you're doing a brute force 
 replacement of a .war rather than a real undeployment, you deserve what you 
 get.

 You have the option of placing the webapp's Context element in 
 conf/Catalina/[host]/[appName].xml so that you can override the one packaged 
 in the .war file - often necessary with prepackaged apps that might require 
 special configuration for a particular site.

  - Chuck


 THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY 
 MATERIAL and is thus for use only by the intended recipient. If you received 
 this in error, please contact the sender and delete the e-mail and its 
 attachments from all computers.

 -
 To start a new topic, e-mail: users@tomcat.apache.org
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: where to place context configuration

2008-08-14 Thread Mark H. Wood
On Thu, Aug 14, 2008 at 01:57:22PM -0500, Caldarale, Charles R wrote:
 You may place the Context element in either location, but Tomcat
 *may* copy the one from META-INF/context.xml to conf/Catalina/[host]
 so it can access it directly.  Proper undeployment will remove the
 copy.

Is there a page somewhere which documents this?

 If you're doing a brute force replacement of a .war rather than a
 real undeployment, you deserve what you get.

Is there a page somewhere which explains how to distinguish the two cases?

 You have the option of placing the webapp's Context element in
 conf/Catalina/[host]/[appName].xml so that you can override the one
 packaged in the .war file - often necessary with prepackaged apps
 that might require special configuration for a particular site.

But then an undeployment (whatever that may be) will destroy my
carefully handcrafted Context, right?  This behavior has been driving
me crazy for years.  I keep /conf/Catalina/[host] full of
foo.xml.saved files so I can quickly recover when Tomcat blows foo.xml
away, seemingly at random.  Half the time, when I copy a new .war in,
the Context is destroyed; the other half, it Just Works.

Currently on Tomcat 6.0.16, but I've had this frustration with 6.0,
5.5, and I believe 5.0.

-- 
Mark H. Wood, Lead System Programmer   [EMAIL PROTECTED]
Typically when a software vendor says that a product is intuitive he
means the exact opposite.



pgpQTeCbpaS7X.pgp
Description: PGP signature


Re: where to place context configuration

2008-08-14 Thread Robert Dietrick
On Thu, Aug 14, 2008 at 11:52 AM, Caldarale, Charles R
[EMAIL PROTECTED] wrote:
 From: Robert Dietrick [mailto:[EMAIL PROTECTED]
 Subject: Re: where to place context configuration

 I would very much prefer to use only the one in
 mywebapp/META-INF/contex.xml

 I hope the above is a typo, because if it's really in contex.xml Tomcat 
 won't look at it.

Yes, it was a typo.


 But this doesn't seem to work.

 It works fine for me; I put the Context element in one location or the 
 other, not both.  Note that Tomcat will sometimes copy the one from 
 META-INF/context.xml into conf/Catalina/[host]/[appName].xml during a 
 deployment, and that's likely what you're seeing.

 Plus, it just seems idiotic to need to declare the context
 and its resources in two locations.

 Never had to do that.  Suggest that you stop Tomcat, remove the one in 
 conf/Catalina/[host], clean out the work directory for the webapp, clean out 
 the expanded webapp so all you have left is the .war file, and restart 
 Tomcat.  You will likely see the one in conf/Catalina/[host] recreated from 
 the META-INF/context.xml, since Tomcat wants to be able to read the file 
 directly.  A real undeployment of the webapp should delete the one in 
 conf/Catalina/[host]; if you're updating the .war without doing an 
 undeployment first, you're breaking the rules, and all bets are off.

That did it.  I've never seen it documented anywhere that tomcat
copies context files from META-INF/ to /conf/[Engine]/[host]/.  Plus,
I was deploying as a directory named '[myapp].war' rather than as an
actual .war file, so I guess I get what I deserve.

Thanks for the help.

-rob

-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: where to place context configuration

2008-08-14 Thread Caldarale, Charles R
 From: Len Popp [mailto:[EMAIL PROTECTED]
 Subject: Re: where to place context configuration

 So, the server admin can configure the DB server etc. by editing the
 file under the conf dir, but every time they deploy a new version of
 the app the settings are auto-wiped?

Depends on how the redeployment is done.  If the webapp is specifically 
undeployed, then all traces of it are removed, including the 
conf/Catalina/[host]/[appName].xml file; see Mark T's message for details:
http://marc.info/?l=tomcat-userm=121873999115208w=2

If you just want to replace the webapp, then dropping in a new .war file will 
not lose the element in conf/Catalina/[host]/[appName].xml file, but things may 
not be cleaned up properly, especially on Windows systems where the 
anti-locking mechanisms are employed.

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY 
MATERIAL and is thus for use only by the intended recipient. If you received 
this in error, please contact the sender and delete the e-mail and its 
attachments from all computers.

-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: where to place context configuration

2008-08-14 Thread Caldarale, Charles R
 From: Mark H. Wood [mailto:[EMAIL PROTECTED]
 Subject: Re: where to place context configuration

 Is there a page somewhere which documents this?

I don't think so, at least not in sufficient detail.  Mark T's recent message 
covers the steps:
http://marc.info/?l=tomcat-userm=121873999115208w=2

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY 
MATERIAL and is thus for use only by the intended recipient. If you received 
this in error, please contact the sender and delete the e-mail and its 
attachments from all computers.

-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: where to place context configuration

2008-08-14 Thread Len Popp
On Thu, Aug 14, 2008 at 15:55, Caldarale, Charles R
[EMAIL PROTECTED] wrote:
 If you just want to replace the webapp, then dropping in a new .war file will 
 not lose the element in conf/Catalina/[host]/[appName].xml file, but things 
 may not be cleaned up properly, especially on Windows systems where the 
 anti-locking mechanisms are employed.

But earlier you said:

 if you're updating the .war without doing an undeployment
 first, you're breaking the rules, and all bets are off.

So that doesn't sound like a reasonable alternative for a server that
anyone cares about.

Is there someone who knows for sure how it was *designed* to work?
-- 
Len

-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: where to place context configuration

2008-08-14 Thread Caldarale, Charles R
 From: Len Popp [mailto:[EMAIL PROTECTED]
 Subject: Re: where to place context configuration

 But earlier you said:
  if you're updating the .war without doing an undeployment
  first, you're breaking the rules, and all bets are off.

Yes, that was probably a bit excessive.

 Is there someone who knows for sure how it was *designed* to work?

Again, I think Mark T's message documents it fairly clearly:
http://marc.info/?l=tomcat-userm=121873999115208w=2

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY 
MATERIAL and is thus for use only by the intended recipient. If you received 
this in error, please contact the sender and delete the e-mail and its 
attachments from all computers.

-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]