You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by "Quintin Beukes (JIRA)" <ji...@apache.org> on 2009/10/15 10:20:31 UTC

[jira] Commented: (GERONIMO-4907) GBeanInstance to Ignore Missing Setters

    [ https://issues.apache.org/jira/browse/GERONIMO-4907?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12765962#action_12765962 ] 

Quintin Beukes commented on GERONIMO-4907:
------------------------------------------

If this is applied, GERONIMO-4903 could possibly be reversed.

> 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
>
>         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 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.