On Wed, 13 Aug 2003, Weston M. Price wrote:
> My thought was that there are going to be some basic services:
> 
>       Reading a deployable archive.
>       Manipulating a deployable archive (verifiying and iterating over 
> elements 
> etc)
>       Reporting on failures, errors, warnings etc.
> 
> that should be common to both the DeploymentManager and the Verifier. We are 
> all operating on either an EAR (J2eeApplicationObject) or a WAR, RAR, JAR
> (DeployableObject), my thought was that we would share the same notion of how 
> these objects are represented and implemented, or at least share code in 
> certain regards. What sense would it make for the DeploymentManager team to 
> write code to read an EAR, extract the relevant parts and manipulate the 
> archive and then have the Verification team do exactly the same thing? Is 
> there something that I am missing? 

        Well, java.util.jar.* provides most of what you need to read the
actual xAR files...  between that and the ClassLoader, you can access
and/or iterate classes pretty easily.  If we need to explode an EAR into a 
temp dir, that could be common, but it's still a pretty tiny amount of 
code.

        If you're talking about walking through the actual DD items
(beans, resources, roles, etc.), that's what I meant by "metadata".  I
think we do want a consistent set of objects to represent the J2EE and
Geronimo metadata.  However, I think it will get populated in different
ways.  If reading a JAR off disk, and that JAR has a couple XML files,
then something will construct metadata objects from XML.  In the JSR-88
case, the DConfigBeans can write to the same metadata objects...  And the
J2EE standard metadata can either be stripped from the DDBeans or read
from the DDs in the xAR.

        Anyway, I think we want a general procedure for error handling 
larger than the scope of the deployer and verifier.  Potentially something 
with I18N and so on.

Aaron

Reply via email to