geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aaron Mulder <ammul...@alumni.princeton.edu>
Subject RE: [webapp deployment] Progress (was Re: [Deployment] Application Deployment Status)
Date Tue, 07 Oct 2003 17:42:03 GMT
	I agree with the ideas below.  One note: I'd like the default, if
no jndi-root is specified, to be that each application goes in its own
JNDI root (rather than defaulting to everything being shared in one).  
I'd also like to back this up with ClassLoader separation, so that if two
apps end up in different "spaces" then they can't poke each other at all,
except through the usual external interfaces.

	I think this separation would enable us to do some cool things, 
like mapping each application to a different security or transaction 
service, even while running in the same VM (in addition to the ability to 
set up different deploy dirs and different VMs to achieve the same thing).

	Finally, I'm expecting that a single EAR cannot span multiple 
vhosts.  You know, you can't wrap 1 JAR/WAR pair in 1 vhost block and 
another JAR/WAR pair in a different vhost block.  It looks like that's 
true from the snippet below, but I just want to make sure.

Aaron

On Mon, 6 Oct 2003, Jeremy Boynes wrote:
> You know, thinking about it there is nothing in the standard DD
> information about binding anything to the outside world. For a WAR file,
> there is nothing that defines the context or vhost, for an EJB file
> there is nothing that defines the EJBs JNDI name or vhost. An EAR file
> defines the context for a  web app, but says nothing for EJBs or vhosts.
> 
> This got me thinking we can have a common mechanism for specifying a
> root context for binding things too, with lower level overrides.
> 
> For example, in the geronimo-application.xml file we could have
> something like
> <application>
>    <ger:vhost>mydomain.com</ger:vhost>
>    <ger:jndi-root>ldap://dirserver/myapp</ger:jndi-root>
>    <module>
>       <web>
>         <web-uri>app1.war<web-uri>
>         <context-root>/app1</context-root>
>       </web>
>    </module>
>    <module>
>       <ejb>ejb1.jar</ejb>
>    </module>
> </application>
> 
> This would result in app1 being bound to all listeners for the host
> mydomain.com and the JNDI names for EJBs in ejb1.jar being bound to
> myapp context of the LDAP server on dirserver. Or at, least that's the
> general idea, a lot more detail is needed.
> 
> This sounds like information that would be passed in a DeploymentContext
> instance associated with the unit being deployed. Then the EARDeployer
> would read its geronimo DD and populate a WARDeploymentContext which
> would be passed to the WARDeployer; the WARDeployer works out the actual
> connector to use based on the information passed in from outside plus
> what it finds in its DD. The DeploymentContext is the bridge and there
> is no need for the EAR and WAR deployers to understand each other's DD
> POJOs.
> 
> --
> Jeremy
> 


Mime
View raw message