[
https://issues.apache.org/jira/browse/PIVOT-813?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Noel Grandin resolved PIVOT-813.
--------------------------------
Resolution: Fixed
Tested using Sandro's code and launch files, and as far as I can tell this is
fixed.
Please re-open with additional test cases if there is still a problem.
> BXML annotation should work for JavaBean properties
> ---------------------------------------------------
>
> Key: PIVOT-813
> URL: https://issues.apache.org/jira/browse/PIVOT-813
> Project: Pivot
> Issue Type: Improvement
> Components: core-beans
> Affects Versions: 2.0
> Reporter: Piotr Kołaczkowski
> Assignee: Sandro Martini
> Labels: BXML, BXMLSerializer, access, annotation, field, property
> Fix For: 2.0.1
>
> Attachments: custom_panel.bxml.launch, pivot_813 - Applet.launch
>
>
> Consider the following code:
> public class MyComponent extends Panel implements Bindable {
> @BXML
> private String field;
> public void setField(String field) {
> this.field = field;
> }
> public String getField() {
> return field;
> }
> // ...
> }
> Current behaviour: the BXML serializer attempts to set the private field
> directly, bypassing the public setter. This causes an exception, if the
> application runs as untrusted code, e.g. as an unsigned applet, because
> private field access is restricted.
> Desired behaviour: call the public setter if it exists, and fall back to
> setting the private field directly only if the setter hasn't been defined.
> This would be also consistent with other frameworks such as Hibernate or
> Spring, which use setters and getters to set and get property values.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira