I'm doing some work on our ejb app validation code so we can get the
new rules for EJB3 in there. Mostly I'm trying to refactor the
existing code to use the JAXB tree we have instead of the existing
abstraction which we no longer need and is pretty limited. The idea
being once this part is done the writing of validation rules can be
divided up and we can all jump in as we have time.
So far the list of unimplemented rules are:
[OPENEJB-453] Validation for EJB 3.0 beans
[OPENEJB-454] Validation: Check that @Remote hasn't been used to
point to an EJBHome or EJBObject interface
[OPENEJB-455] Validation: Check that @Local hasn't been used to
point to an EJBLocalHome or EJBLocalObject interface
[OPENEJB-470] Validation: Check that interface annotated @Local
or @Remote isn't annotated conversely in parent interface
[OPENEJB-526] Validation: Check for incorrect use of injection-
target-name
[OPENEJB-527] Validation: Warn on unused interceptors
[OPENEJB-535] Validation: beans implementing
javax.ejb.SessionBean also using lifecycle annotations
[OPENEJB-536] Validation: AroundInvoke signature
[OPENEJB-537] Validation: AppClients using non-static annotations
[OPENEJB-538] Validation: Stateful pojos with Home interfaces
have init-method(s)
[OPENEJB-552] Validation: EjbName used in InterceptorBinding is
correct
[OPENEJB-571] Validation: @PersistenceContext name is specified
[OPENEJB-572] Validation: @PersistenceUnit name is specified
[OPENEJB-574] Validation: XML transaction attributes to beans,
interfaces or methods that do not exist
[OPENEJB-575] Validation: XML method permissions to beans,
interfaces, or methods that do not exist
[OPENEJB-577] Validation: @Resource name for env-entry points to
declared value
If you've spent some time in the spec and see anything not listed,
feel free to add more. I haven't done it yet for the EJB3 spec, but
in prior specs I just searched for the word "must" which usually
brings you right to some rules.
-David