Re: Making Classes Available to Tomcat (Geronimo 1.1.1) on Startup

2007-04-19 Thread David Jencks
I'm trying to install a set of global Servlet Filters in Tomcat.   
I've modified the global Tomcat var/catalina/conf/web.xml  
configuration and added the references to my filters.  But I don't  
know where to place the class files to make them available to  
Tomcat during Geronimo startup.


Putting them in the var/shared/lib (or var/shared/classes) didn't  
work (I get a ClassNotFoundException).  I think this means that the  
Tomcat container doesn't include a dependency to the SharedLib  
GBean or maybe this dependency isn't fully realized on startup?


I have looked through the attributes of the TomcatWebConnector and  
some of the other GBeans that are installed by default with  
Geronimo to see if there was something I could tweak to set an  
extra bootstrap classpath location, but I haven't found anything.


I could modify the geronimo.bat file to add my classes to the Java  
classpath during the Geronimo startup, but I'm hoping to find a  
solution more integrated with Geronimo.  I'm also trying to avoid  
having to re-build Geronimo from source if possible.


Any ideas?


you might be able to put them in a module or web app that you use as  
a parent of all your other web apps, but since in my experience  
tomcat starts a default web app I have doubts this will be easy to  
make work.  You would probably have to move most of the gbeans in the  
tomcat module into your parent web app plan.  (you can turn off the  
gbeans in the tomcat module by including load=false in config.xml  
for each gbean).


It would probably be simpler to build your own tomcat module and  
install it instead of the one we ship.


There might be other approaches I haven't thought of.

thanks
david jencks



Daniel.




Re: Making Classes Available to Tomcat (Geronimo 1.1.1) on Startup

2007-04-19 Thread Daniel Bloomfield Ramagem

Thanks David!  You confirmed my suspicions that a custom build of the Tomcat
module is probably the way to go.

Daniel.

On 4/19/07, David Jencks [EMAIL PROTECTED] wrote:


 I'm trying to install a set of global Servlet Filters in Tomcat.
 I've modified the global Tomcat var/catalina/conf/web.xml
 configuration and added the references to my filters.  But I don't
 know where to place the class files to make them available to
 Tomcat during Geronimo startup.

 Putting them in the var/shared/lib (or var/shared/classes) didn't
 work (I get a ClassNotFoundException).  I think this means that the
 Tomcat container doesn't include a dependency to the SharedLib
 GBean or maybe this dependency isn't fully realized on startup?

 I have looked through the attributes of the TomcatWebConnector and
 some of the other GBeans that are installed by default with
 Geronimo to see if there was something I could tweak to set an
 extra bootstrap classpath location, but I haven't found anything.

 I could modify the geronimo.bat file to add my classes to the Java
 classpath during the Geronimo startup, but I'm hoping to find a
 solution more integrated with Geronimo.  I'm also trying to avoid
 having to re-build Geronimo from source if possible.

 Any ideas?

you might be able to put them in a module or web app that you use as
a parent of all your other web apps, but since in my experience
tomcat starts a default web app I have doubts this will be easy to
make work.  You would probably have to move most of the gbeans in the
tomcat module into your parent web app plan.  (you can turn off the
gbeans in the tomcat module by including load=false in config.xml
for each gbean).

It would probably be simpler to build your own tomcat module and
install it instead of the one we ship.

There might be other approaches I haven't thought of.

thanks
david jencks


 Daniel.