GBeanInstance to Ignore Missing Setters
---------------------------------------
Key: GERONIMO-4907
URL: https://issues.apache.org/jira/browse/GERONIMO-4907
Project: Geronimo
Issue Type: Improvement
Security Level: public (Regular issues)
Components: kernel
Affects Versions: 2.1.4, 2.1.5, 2.2, 3.0
Reporter: Quintin Beukes
Fix For: 2.2, 3.0
Related to GERONIMO-4903
I submitted a patch which fixes the problem by removing the attributes which
don't have setters.
After reading the OpenEJB source I noticed an XBean feature which would be a
more correct fix for the problem.
Instead of removing the attributes which won't have setters in the class being
instantiated as a GBean, configure the ObjectRecipe to rather ignore those
properties which don't have setters. This has 2 benefits
1) Those properties can still be included for "read" access
2) If such a property exists for any other GBean, or is added in the future,
this will help that those don't possibly create fatal bugs - which the
JettyConnector bug almost was (you couldn't edit a connector - ever).
This is achieved by adding the following line after the ObjectRecipe was
created:
objectRecipe.allow(Option.IGNORE_MISSING_PROPERTIES);
This permissions merely removes the property from the list of properties to
"create the object with", if the accessor wasn't found.
Since those properties are still available, they can be accessed by the GBean
API, and thus it doesn't become a requirement to have setter accessors for all
persistent properties.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.