[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [m2e-users] Where should tomcat base configuration be located in Eclipse using Sonatype Webby Plugin?
|
If I understand correctly you need put some resources (config files) on
the runtime classpath of your application, but you don't want them to be
packaged in WAR.
If this is so, here's a simple solution: create a configuration
directory in your WAR project and include it as resource conditionally,
using dedicated maven profile. You can then enable this profile on an
Eclipse project using Properties > Maven dialog.
If you need to tweak Tomcat itself, like adding connectors or
datasources to server.xml there's another workable, but more cumersome
approach.
Take a look at target/m2e-webby/container/conf/server.xml There's a
<Context> element in there, generated by Webby. Copy it and paste it
into server.xml of an external Tomcat installation tweked to your needs.
This way, your external tomcat installation will pick up classes
recompiled by Eclipse and resource changes in the WAR and it's overlays.
Of course you can combine this setup with JRebel for instant class
reloading. The downside is that you need to start / stop the external
tomcat instance manually and that you need to repeat the copying of
<Context> element whenever project structure (modules) or dependencies
change, which may be a problem or not depending on the stage your
project is in.
Cheers,
Rafał
On 02/08/2012 01:20 AM, Benjamin Bentmann wrote:
Asaf Mesika wrote:
I need to put several files in tomcat/conf directory
(log4j.properties, acme.proeprties, etc) which my WAR reads from the
classpath (since conf is in the classpath).
That the conf dir ends up on the classpath kinda surprises me, given
the info I find on [0], but then again, I'm not really familar with
Tomcat.
I did place them in my installed tomcat location (~/tomcat/conf), and
when I created a new Webby Launch Configuration I referenced ~/tomcat
directory, but from some reason the target/m2e-webby/container/conf
doesn't include my log4j.properties and acme.properties files. When I
try to copy them to target/m2e-webby/container/conf it gets erased as
soon as I launch Webby.
The container configuration is under tight control of Webby/Cargo, you
currently have little to no means to change that.
Looking at the catalina.properties that get used for Tomcat 6.x and
7.x, the only way that I see to solve your issue is to place the files
into ${catalina.home}/lib such that they end up in Tomcat's common
class loader.
That not working for you, I can only suggest to look at other web
integrations like m2e-wtp.
Benjamin
[0] http://tomcat.apache.org/tomcat-7.0-doc/class-loader-howto.html
_______________________________________________
m2e-users mailing list
m2e-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/m2e-users