[API Review]: Add 'fxml.version' to System Properties (Was: FXML version number)
Eric Le Ponner
eric.le.ponner at oracle.com
Fri Jul 5 08:17:03 PDT 2013
This looks good.
Note that, since b28, Scene Builder 1.1 now generates FXML files which include:
Scene Builder Next will do the same but using values from 'fxml.version' and 'javafx.version'.
It may also use those variables to improve error report or version management (to be defined).
> From: Milan Kubec <milan.kubec at oracle.com>
> Subject: [API Review]: Add 'fxml.version' to System Properties (Was: FXML version number)
> Date: July 1, 2013 7:01:12 AM PDT
> To: "openjfx-dev at openjdk.java.net" <openjfx-dev at openjdk.java.net>
> Reply-To: milan.kubec at oracle.com
> I propose to add 'fxml.version' property to JVM System Properties to
> store version of FXML specific version that is supported by FXML Loader.
> The property would be more specific equivalent of 'javafx.version'
> because these two versions won't advance simultaneously.
> Details about versioning and proposed namespaces are described in issue:
> Thanks for comments
> Dne 7.6.2013 10:49, Milan Kubec napsal(a):
>> I have implemented simple versioning for FXML documents in FXMLLoader, but without support in tools it won't be very useful. I have agreed with NetBeans and Scene Builder folks that they will include support for versioning too. Support means that they will produce document with two XML namespaces - one defines version of fx: prefixed elements and attributes (xmlns:fx; it's already there, just the version is appended) and the other of actual JavaFX API used to produce document (xmlns; default, no prefix). The first will be checked, because wrong version can cause failure. The latter is only informational, no strict checking of version is possible, but tools can suggest to upgrade runtime, translate document etc.
>> JavaFX API version is stored in System Properties as "javafx.version". The open question is still where and how to store fxml version in code. I think that we could have also property for this purpose, e.g. "fxml.version" in System Properties. So far it's part of FXMLLoader API, which is probably not very fortunate. What do you think?
>> Issue details: https://javafx-jira.kenai.com/browse/RT-28599
More information about the openjfx-dev