users@glassfish.java.net

Q: Deployment Dependency Management in Glassfish -- how?

From: daniel_k <mail_at_danielkastenholz.de>
Date: Sun, 8 Jun 2008 15:57:24 -0700 (PDT)

Hi,

Geronimo has a really nice way of handling dependencies at deployment time.
Each artifact (EJB, Web App, ...) must provide its own version number at
deployment time and can optionally declare dependencies on other artifacts
(e.g. "activemq-1.0"). If it turns out at deployment time that the
dependencies aren't fulfilled, the deployment is rejected.

Is there anything equivalent in Geronimo?

If not, I would probably use the following workaround:
- declare dependencies via IoC / Dependency Injection on class level
- declare a top-level interface, e.g. Interface_v1, and refer to it from
dependant objects via IoC
- when Interface_v1 needs an update, remove it entirely and introduce a new
Interface_v2 (or probably let Interface_v2 inherit from Interface_v1)
- redeploy everything
- all modules that are now still reference Interface_v1 would either fail or
use the new implementation transparently (depending on whether inheritance
is used)

Although this solution has its own kind of elegance (because version
management is no longer a meta data issue and maintained directly in the
code), can you tell me if there anything else?

Thanks

Daniel

-- 
View this message in context: http://www.nabble.com/Q%3A-Deployment-Dependency-Management-in-Glassfish----how--tp17724155p17724155.html
Sent from the java.net - glassfish users mailing list archive at Nabble.com.