V8 detect changed property name

And V8 is already not supported, we would like to (have to) upgrade to a recent version

We have prime subscription

If you’re clear on what the change to the framework would be, and it’s within the limits of what’s doable within the current event system, you could always just do it yourself and submit a PR, or use Expert on Demand to have it implemented

At this point it would be nice if someone could point me to a class where propertynames and bound fields meet so that we save some time

BeanPropertySet maybe?

Yes

Probably in conjunction with Binder

The unit tests are probably a good place to start looking

For Vaadin 8’s BeanPropertySet, that would be framework/server/src/test/java/com/vaadin/data/BeanPropertySetTest.java at master · vaadin/framework · GitHub

And the package framework/server/src/test/java/com/vaadin/data at master · vaadin/framework · GitHub more generally

what i am looking for is a map field->property name, or we would have to construct it in each custom field. which may be the way to do it at the end

I don’t think the bindings are stored like that

Yes, i think the same

The bindings are stored in Binder’s private final Collection<Binding<BEAN, ?>> bindings;

There’s also private final Map<String, Binding<BEAN, ?>> boundProperties;

The versions in Vaadin 8 and later have mostly the same API, but there are some internal changes to the data classes, so check which version you’re going to want to go to before commiting

Thank, I am going to try the boundproperties

Thanks

Hopefully you can figure something out!

After a brief internal discussion, there was the thought that having the property in the events would not work well, as the event doesn’t need to be associated with Binder. Instead, a solution starting from Binder could be something like String propertyName = binder.getPropertyName(event.getSource()) or even binder.addPropertyChangedListener(String propertyName)