geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Jencks (JIRA)" <>
Subject [jira] Reopened: (GERONIMO-4907) GBeanInstance to Ignore Missing Setters
Date Thu, 29 Oct 2009 21:57:59 GMT


David Jencks reopened GERONIMO-4907:

David Blevins pointed out that we should first try to create the object, then get the set
of unset properties, and if there are any, complain about all of them at once.

> GBeanInstance to Ignore Missing Setters
> ---------------------------------------
>                 Key: GERONIMO-4907
>                 URL:
>             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
>            Assignee: David Jencks
>             Fix For: 2.2, 3.0
>         Attachments: ignore-missing-accessors.patch
> Related to GERONIMO-4903
> I submitted a patch which fixes the problem by removing the attributes which don't have
> 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.

View raw message