geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Karl Avedal (JIRA)" <>
Subject [jira] Commented: (GERONIMO-1470) Our context root settings should take precedence over those from application.xml
Date Sat, 14 Jan 2006 14:38:21 GMT
    [ ] 

Karl Avedal commented on GERONIMO-1470:

I was the one pointing this out on IRC, and I'd like to clarify my thoughts a little.

The JavaEE specification lays out a set of platform roles in section J2EE.2.10. One of those
roles is the Application Assemler (J2EE.2.10.3). His responsibility is to take a set of components
and assemble these into an application (.ear). That ear might contain web-applications and
the assembler can in application.xml provide instructions for the Deployer (J2EE.2.10.4) regarding
what context-root this web-app would normally be deployed at.

When he has created an application this will be shipped to different customers. These customer
have different operating environments that they want to deploy this application in. Now the
Deployer takes over and installs and configures the application.

"The Deployer's output is web applications, enterprise beans, applets, and application clients
that have been customized for the target operational environment and are deployed in a specific
J2EE container. " (J2EE.2.10.4).

One of the customizations that the deployer might want to make is to change as which context-root
some web-application is deployed. Obviously it might happen that different customers will
have their web-sites organized in different manners, so they must be able to change this.

In the current Geronimo version (and for example jboss, but not in for example Orion), if
you deploy a whole .ear, and there's a context-root specified in the application.xml, there
is currently no way for the Deployer to change the context roots for web-applications in an
.ear, without editing the application.xml.

This is problematic and it violates the role separation between assembler and deployer since
the deployer would be messing with the assembler's output. 

One consequence of this would be that whenever the assembler ships a new version of the .ear
to his customers, the deployer would once again have to alter the context-root setting in
application.xml, which is pretty annoying, since a version upgrade without any changed external
dependencies should be as simple as dropping in the new ear.

I'm not saying that the best solution would be to simply let the web plan setting take precedence
over application.xml. I would rather make it possible to override the application.xml setting
in the application deployment plan (geronimo-application.xml), since that would be more symmetric.

PS. The solution I think is the nicest (but I'm partial, since I used to work on that app-server),
is how Orion solves this. It has a separate definition of a web-site and in the config of
the web-site you map context paths to different web-applications. This fits very well with
the JavaEE role system.

> Our context root settings should take precedence over those from application.xml
> --------------------------------------------------------------------------------
>          Key: GERONIMO-1470
>          URL:
>      Project: Geronimo
>         Type: Improvement
>   Components: deployment
>     Versions: 1.1
>     Reporter: David Jencks
>     Assignee: David Jencks
>      Fix For: 1.1

> Someone on IRC pointed out that the context-root setting in application.xml is an assembly-time
setting and should be overridden by the deploy-time setting in our web plans.  At the moment
the application.xml setting overrides the web plan setting.  This is a trivial change, but
I want to make sure there are no objections to it.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message