FXML expression binding

John Smith John_Smith at symantec.com
Tue May 21 11:48:29 PDT 2013

I'm guessing that it is not "safe" to use the current FXML expression binding?

I don't think it's documented anywhere.  
Nobody seems to understand it's exact syntax and capabilities.
It seems likely that it may be replaced with some other expression language in the future.

I'm guessing as long that as you stick with stuff which is defined in introduction to fxml it should continue to work in future versions, but using other expressions outside of that (for example !(boxD.selected&&boxE.selected)) is probably not recommended unless you are willing to deal with potential backward compatibility issues in the future.

-----Original Message-----
From: openjfx-dev-bounces at openjdk.java.net [mailto:openjfx-dev-bounces at openjdk.java.net] On Behalf Of Richard Bair
Sent: Tuesday, May 21, 2013 8:32 AM
To: Philipp Dörfler
Cc: openjfx-dev at openjdk.java.net
Subject: Re: FXML expression binding

No it does not, I don't think it is defined what it supports at present, but it definitely is not UEL.


On May 20, 2013, at 11:37 AM, Philipp Dörfler <phdoerfler at gmail.com> wrote:

> Just to clarify - at the moment, FXML expression binding uses UEL?
> Thanks,
> ~ Philipp
> Am 07.05.2013 um 11:42 schrieb Werner Lehmann <lehmann at media-interactive.de>:
>> See below.
>> On 07.05.2013 01:56, Richard Bair wrote:
>>>> ! boxD.selected&&  boxE.selected seems to be: !(boxD.selected&&  
>>>> boxE.selected)
>>> I'd probably call that one a bug. Whether it was or not!
>> I would agree. Looks to me as if there might be special code checking for a '!' at the beginning of the expression. Regardless whatever comes next.
>>> At the time, I really wanted us to use UEL (same expression language used by JSF, JSP) for the following reasons:
>>>    - EE engineers will be familiar with it
>>>    - Lots of example code out there
>>>    - Implementation already exists and is robust
>>> There were a few things I felt needed fixing in UEL to be quite what 
>>> I wanted, but basically I felt we should take it and go. Since then 
>>> some other binding languages have come on the scene such as 
>>> handlebars and I don't remember how many others we looked at. Should 
>>> we just take UEL, or should we take a full survey of the JS 
>>> state-of-the-art?
>> Personally I don't know UEL (used only OGNL on Tapestry). Not sure if UEL documentation 100% applies to FX beans/properties when it is intended for EE beans. For example, what about obserable properties, or the #{} syntax. If that is clarified I'd be happy with the choice.
>> The "Parameterized Method Calls" feature might even help to resolve RT-19198 which is about preselection in selection models in FXML. One problem here: select() is a void method, so there is no good result of that expression and in this case you wouldn't want to use it anyway.
>> http://docs.oracle.com/javaee/6/tutorial/doc/bnahu.html#gjhbz
>> Werner

More information about the openjfx-dev mailing list