Details
-
Improvement
-
Resolution: Won't Fix
-
Neutral
-
None
-
5.3.9
-
-
Empty show more show less
-
Sprint 2 (Vietnam)
-
8
Description
The TwinColumnField (actually a ComboBox) stores the data by default into a JCR MultiValue property.
Same as the as the MultiField does by default.
There is also the need for TwinColumnField to have this data stored different, into sub nodes etc as the DelegatingMultiValueFieldTransformer and DelegatingMultiValueSubnodeTransformer for the MultiField does.
But the two Tramsformers DelegatingMultiValueFieldTransformer and DelegatingMultiValueSubnodeTransformer of the MultiField won't work for the TwinColumnField:
Caused by: com.vaadin.data.util.converter.Converter$ConversionException: Unable to convert value of type com.vaadin.data.util.PropertysetItem to presentation type interface java.util.Set. No converter is set and the types are not compatible.
Finally triggered, by a Type missmatch as the MultiField operates on Type PropertysetItem and the TwinColumn on a Set (LinkedHashSet in the end), in:
com.vaadin.ui.AbstractField.setPropertyDataSource(Property) line 623
setConverter(newDataSource.getType());
Creating a custom Transform for this is not an easy task, the customer gave up because its too time intensive.
He switcher to a custom SelectField using MultiValues. But the TwinCol would have matched perfect his use case (a very long list to choose from).