Deployment Specs http://jcp.org/en/jsr/detail?id=88
Question: I noticed that the most recent docs are from July 2002. Has nothing change since then?
~Jonathan
Weston M. Price wrote:
I guess first and foremost,
IMO
Let's have fun with this module...man, we have banged around on this list all day and I believe we have really worked out some excellent ideas. I know I have gained a great deal by just being involved...but let's not forget, we are supposed to enjoy doing this, this is Apache right? Verification and deployment are two of the most un-sexy ideas in J2EE, in fact, next to Java IO (prior to NIO) I can't think of anything more dull....well, save for maybe the Boston RedSox..(sigh, ignore that)...However, I am pretty pumped about this.....I get to develop code with smart engaging personalities (some that get up before noon) and just have a blast....so, let's just take it step by step and see what comes up....I have already heard about a million ideas that are great....the basic module structure could use some comments...so let's just role with it...
Regards,
Weston
On Monday 11 August 2003 07:33 pm, [EMAIL PROTECTED] wrote:
Agreed. I`m not familiar with maven yet. Definitively needs help on that...
About planning: I think that all of us agreed that the deployment verifier will have to be a component: it will have to receive the ear file from somewhere and do all the tasks without any help of external entities. This way, it can be placed in the client GUI, in the server, we can create an ant task for it, and so on.
Some thoughs about the verifier:
1. It should have an interface for rules. This interface will allow each rule implemented in a distinct class (several rules can be implemented in the same class either). Not sure about performance issues yet, but IMO this is the best that can be done to make sure that new rules added/removed from specs will be promptly integrated into verifier. I'm thinking in Chain of Responsability to manage the rules, but each rule will have to say about what domain it`s related (home interfaces rules, local interfaces rules, session rules and so on). One "class rule" can be related to more than one domain. This will speed up the process, as the verifies asks only the rules related to the domain that it`s verifying at moment;
2. It should have an interface for expressing rules violations, like ActionError on Struts. This interface should allow to query about what section was violated, the message related to the error (with i18n for sure ;) ), the offendind class and so on. This way, any tool that want to use the validator can get the error lists and manipulate them as they want; IMO this is better than exceptions because we can generate several violations at once and is better that string messages because gives more flexibility.
3. The validator will have to read the application.xml and ejb-jar.xml files to do the job (specific deployment files like jboss.xml would be interesting but have to be integrated in a really modular way). The point is that the server will have to read these file as well to startup the application. So, the reader should be placed in a common lib. Do anyone knows if jakarta already have this implemented?
4. If we will write the XMLs readers decribed above, does everyone agrees in using JAXB?
Cheers, Denes
Citando Jonathan Duty <[EMAIL PROTECTED]>:
Great. Lets get a maven project stub generated and get started. Any ideas for planning?
~Jonathan
Weston M. Price wrote:
Right on dude....
You nailed it....especially in terms of the relationship between the
controller and the two...well at this point we will call them
services....The
"manager" cooridinates the interaction between the two...I am of the
personal
mind that the verification service should have no knowledge (at least in
terms of hard references, we will share code) of the deployment service.
This
would allow the modules to be distinct....this would naturally dictate a common set of classes shared between us which could possibly be it's own module, perhaps the objects implementing the javax interfaces.
Weston
On Monday 11 August 2003 04:48 pm, Jonathan Duty wrote:
Since I'm weird and think better in pictures, I tried to draw what you were describing. Do I have the correct Idea of your vision? The image is attached. Hope this helps others out also. ~Jonathan
Weston M. Price wrote:
I have thought of it in terms of a deployment manager (as Chris
alluded
to
earlier this morning). The manager would be responsible for coordinating the interaction between the verification engine and the deployment engine....sort of a controller, that way the two can be loosely coupled relying on an external agent to provide an higher level of service, in this case the complete deployment of a J2EE archive.
Weston
On Monday 11 August 2003 04:05 pm, Labeeb Syed wrote:
In this scenario, the verifier will have to interface with the deployer. I would definitely like to implement the SPI for the deployer.
Q: Should the deployer be responsible for ensuring bean consistency, e.g., entity bean cmr mapping vs databases and relational mappings, or any such other technical issues (realms checking, etc.)?
Chris, if this is what we'd work on, I'd like to come up with a list potential technical problems we could encounter to ensure just integrity of the DD file.
Labeeb Syed
--- Chris Opacki <[EMAIL PROTECTED]> wrote:
That is exactly what i was thinking. This is the object model that has been defined in the deployment spec... under Tool Provider Interfaces. There are also some other classes, exceptions and interfaces that both modules might use.
--- "Weston M. Price" <[EMAIL PROTECTED]> wrote:
But I do agree that the two teams must work
closely
together....Chris made an
excellent point in indetifying that there are
certain basic facilities that
we can use together....I think if we can agree on
a
common object model for archive formats (EAR, WAR, SAR) then we could probably develop our own streams, attributes, behavior.....
Weston
On Monday 11 August 2003 03:18 pm, Chris Opacki
wrote:
Ditto on all of that! Quite honestly...the
deployer
shouldn't run...period...until the verifier has
run...its a good idea that the deployableobject
are
build from within a controller that sends them
to
the
verifier for verification and then to the
deployer.
Something along that lines at a high level. we
can
reuse both engines for CLI and the GUI.
--- Jonathan Duty <[EMAIL PROTECTED]> wrote:
+1 You've convinced me. That would be a bad
a$$
tool to have as a developer.
Plus, the deployment team could use it if they
want
to verify the archive schema before they start deploying it.
Count me in! ~Jonathan
Jonathan Duty Software Developer - eWashtenaw
-----Original Message-----
From: Weston M. Price
[mailto:[EMAIL PROTECTED]
Sent: Monday, August 11, 2003 6:41 AM To: [EMAIL PROTECTED] Subject: Re: J2EE deployment verifier
I agree completely. I think what we are
talking
about are two modules
that are
close cousins. The verification manager is
again,
the "front-line" of
defense
for the deployment manager. I would assume the
deployment manager would
deal
with critical errors such as
LinkageConstraints,
incorrect classfile
versions
etc. while the verfication manager will handle
actual semantic
fallibities in
the deployment descriptors based upon the
existing
specifications.
The reason I mentioned a seperate
verification
module was that I
would
developers (hell, I know I would) like an
engine
that given a deployment
platform could validate their archive before
ever
trying to drop it in
the
chute. This would save a lot of time largely
due
to
the fact that XML
descriptors are not typed and you don't know
if
they
are "correct" at
compile
time. I suppose the biggest win in all of this
in my
opion would be to
provide hooks for an ANT task that would
verify
the
archive during compile time.
Regards,
Weston
On Monday 11 August 2003 02:39 pm, Jonathan
Duty
wrote:
Why couldn't they be close friends. Could
this
verifier, even as a
separate module, be a subset of the deploy
module?
I mean we don't want
to deploy something that the J2EE server
will
not
accept.
Maybe these 2 groups should work close
together.
~Jonathan
-----Original Message-----
From: Chris Opacki
[mailto:[EMAIL PROTECTED]
Sent: Monday, August 11, 2003 10:23 AM To: [EMAIL PROTECTED] Subject: RE: J2EE deployment verifier
My bad...I was assuming the deploy tool and
the
wrote:verifier would be close friends. ;)
--- Srihari S <[EMAIL PROTECTED]>
True
Our module is just going to check and
declare
whether or not a given unit of deployment is deployable on a j2ee server or not.
Nothing more..nothing less.
Building this unit will be our
mission..right
weston??
-----Original Message-----
From: Weston M. Price
[mailto:[EMAIL PROTECTED]
Sent: Monday, August 11, 2003 3:05 PM To: [EMAIL PROTECTED] Subject: Re: J2EE deployment verifier
And even further, let's clarify the
verification
is
a completely different
animal than actual deployment. Am I
correct
on
this
one at least in terms of the way we are thinking about this module?
Weston
=== message truncated ===
__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com
