One thing to note is that verfication done at compile time can only check for some of the typical problems.

It can include checking for the following type of problems

- EJB meta data errors
- Check that EJB method signatures conform to spec and matche the EJB meta data
- EJBQL is well formed and parsable


What is difficult to verify during compile is the following

- A valid container specific O/R mapping. ie for a RDBMS does the table and columns a entity maps to exist and do they have the correct data-types. Binding the datasource referenced inside the application to an actual, realized, datasource is often done outside the .ear file as part of the container configuration.

I believe that jboss only reports these type of errors at runtime when the entity is used for the first time. Having an application fail deployment is a much better solution.

The solution IMHO is a simple interface for each check performed and then a subset of the total checks can be run at compile time and a complete set of checks done at deploy time.

If the checks are modular and independent then the verifier will scale well as the complexity increases.

Lastly I believe the checks should always show, where possible, the exact paragraph in the J2EE spec that has been violated.

- bobby

Weston M. Price wrote:

I agree completely. I think that 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

-- Bobby Abraham [EMAIL PROTECTED] pgp key at http://www.thoughtfulpeople.com/pgp/bobby.pgp






Reply via email to