> ProxyBuilder is used by the FXML loader to instantiate classes whose 
> constructors are annotated with `@NamedArg`. When such a class also exposes a 
> read-only `Map` property (e.g. getProperties() — the same pattern used by 
> `javafx.scene.Node`), setting child elements under that property in FXML 
> caused incorrect behaviour or a runtime error.
> 
> **Root cause:** _getReadOnlyProperty()_ always returned an `ArrayListWrapper` 
> regardless of the actual **getter** return type. When the getter returns a 
> `Map`, an `ArrayListWrapper` is the wrong container and the entries are never 
> transferred to the real map on the object.
> 
> - [x] I confirm that I make this contribution in accordance with the [OpenJDK 
> Interim AI Policy](https://openjdk.org/legal/ai).

Petr Štechmüller has updated the pull request incrementally with two additional 
commits since the last revision:

 - Remove commented out code from tests
 - Remove ArrayListWrapper + suggested code changes

-------------

Changes:
  - all: https://git.openjdk.org/jfx/pull/2167/files
  - new: https://git.openjdk.org/jfx/pull/2167/files/5fb4468e..3ff88e3f

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jfx&pr=2167&range=07
 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=2167&range=06-07

  Stats: 34 lines in 4 files changed: 2 ins; 19 del; 13 mod
  Patch: https://git.openjdk.org/jfx/pull/2167.diff
  Fetch: git fetch https://git.openjdk.org/jfx.git pull/2167/head:pull/2167

PR: https://git.openjdk.org/jfx/pull/2167

Reply via email to