David Jencks wrote:

On Feb 11, 2005, at 7:29 AM, Jacek Laskowski wrote:

Jeff Genender wrote:

Jeff,
    why do we need to use the TomcatModuleBuilder(TMB)
in j2ee-deployer-plan.xml ?

Actually, I just left it in there because A) There is a Jetty Webbuilder version in there, and also for the sake of consistency. I haven't tried to remove it from the j2ee-deployer-plan.xml. Its definately worth a try and see what happens. If any of the Jetty guys want to chime in on this, it would definately be appreciated.


Hi,

Without the deployer it will be impossible to deploy webapps into Tomcat embedded in Geronimo. It's based on the ideas of JettyWebBuilder. The aim of a builder in general is to create GBeans, set up relationships, etc. It is how Geronimo will get to know how to initialize and run them later on during its startup. Unless Jeff changed more that I'm aware of TomcatModuleBuilder creates a GBean for each of the deployed webapps. It may have been done using JettyModuleBuilder, but we have to remember that Gbeans that represent webapps deployed on Jetty have dependencies on Jetty libs and thus they wouldn't work deployed on Tomcat.

A single webapp module builder (aka webapp deployer) is what will be the next major step, I guess. Instead of repeating what's already done in JettyModuleBuilder it'd be better off to have a geronimo-web.xml with a variable that would indicate what web container should the webapp be deployed to.

+1. This would be great to have. But we have some additions...see below.



I think this depends on gbeanizing the tomcat components that hold serviets and filters, and possibly a couple other things.

We are on our way. But there are a few additional things we will need to deal with on the Tomcat side such as the Tomcat specific items that need to be passed, like custom Realms, Valves, etc. We would need this generic builder to allow us to "hook" into it for the Tomcat specific stuff.




Are you actually able to run apps on Tomcat using the current TMB?

Simple apps should be fine. When I mean simple, I mean with no security and are standard servlet/JSP applications. The Tomcat object integration now supports just about everything including root component contexts, geronimo user transactions, JACC, and JAAS, security/policy contexts, and custom geronimo web application contexts. When I say object integration, I mean the code and objects to hook into Tomcat have been written and somewhat unit tested.


More on http://wiki.apache.org/geronimo/Tomcat. It asks for some updates I guess reading the thread ;)

I need to update the wiki, there have been a couple of changes. I will get on it.



The major bridge for total integration is finishing the builder. The builder currently does not pass on the security objects. The TMB needs alot of work yet to get this integrated. I understand Jacek is currently working on this.


Not quite, but it's on my todo list. Was very busy lately. Hopefully, when kids are gone (school winter holidays in Poland, hurrayy!) I'll be less overloaded.

2) The concept of a server.xml file needs to be supported for the Tomcat container. In order to allow people to run thier web apps, we must support custom Valves and Realms at the container, host, and context levels. This is normally declared in a server.xml file, however, we could allow for this type of declaration to be implemented in the plans somehow. We need to kick around the appropriate place for this. In any case, this would eventually be a required add-on to the TMB.


Definitelly a must for Geronimo's newcommers. I completely forgot about it.

I am leaning to have the declaration in the plan as opposed to a seperate server.xml. This can work very well. When we get to this we should talk about how to handle the container, host, and context level declarations for the realm and valves.




If everything is gbean-ized, then this can be done by deploying various gbeans. Similarly, default servlets for static content and jsps are added to each deployed web app by "cloning" various gbeans that the deployer knows about.


3) It would be nice to have the servlets be GBeanized, like Jetty. Although this is not a requirement to get Tomcat integrated, it would be a nice-to-have for consistency sake.


It's a low priority requirement. Let's leave it for now.


I think this will be needed for supporting portlet application and web services deployment in tomcat/geronimo.

Looking at the Jetty code on this, it doesn't seem too difficult to implement this in Tomcat as well.



thanks david jencks


Jeff


Jacek


-- Jeff Genender http://geronimo.apache.org



Reply via email to