combobox with item-data-souce filtering bug
Summary
uibuilder-combobox with item-data-souce throws and error during filtering on the first page of the datasource.
Steps to reproduce
- Navigate to the following example: Form / Multi value / Multi-value with bean items
- select the "First Holder" from the holder combobox
- Click on the Label combobox
- type in the following text, quickly if possible:
Label 41(copy-paste works aswell)
An IllegalArgumentException will be thrown for every label starting from Label 40 ... up untill Label 49.
Below 40 and above 49 everything is fine.
What is the expected correct behavior?
The comboboxes should filter to the correct item without an exception.
Relevant logs and/or screenshots
2024-12-09 16:55:23.967 ERROR 91912 --- [nio-8080-exec-9] i.d.u.e.e.f.c.ExampleErrorHandler : Something happened
java.lang.IllegalArgumentException: fromIndex(50) > toIndex(1)
at java.util.AbstractList.subListRangeCheck(AbstractList.java:509) ~[?:?]
at java.util.ArrayList.subList(ArrayList.java:1108) ~[?:?]
at io.devbench.uibuilder.data.collectionds.CollectionDataSource.fetchData(CollectionDataSource.java:172) ~[classes/:?]
at io.devbench.uibuilder.data.collectionds.CollectionDataSource.fetchData(CollectionDataSource.java:42) ~[classes/:?]
at io.devbench.uibuilder.data.common.datasource.CommonDataSource.fetchData(CommonDataSource.java:94) ~[classes/:?]
at io.devbench.uibuilder.data.common.dataprovidersupport.DataProviderEndpointManager.processFetchDataRequest(DataProviderEndpointManager.java:99) ~[classes/:?]
at io.devbench.uibuilder.data.common.dataprovidersupport.DataProviderRequestHandler.handleValidRequest(DataProviderRequestHandler.java:134) ~[classes/:?]
at io.devbench.uibuilder.data.common.dataprovidersupport.DataProviderRequestHandler.handleRequest(DataProviderRequestHandler.java:50) ~[classes/:?]
at com.vaadin.flow.server.VaadinService.handleRequest(VaadinService.java:1564) ~[flow-server-23.3.2.jar:23.3.2]
at com.vaadin.flow.server.VaadinServlet.service(VaadinServlet.java:369) ~[flow-server-23.3.2.jar:23.3.2]
at com.vaadin.flow.spring.SpringServlet.service(SpringServlet.java:106) ~[vaadin-spring-23.3.2.jar:?]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:779) ~[tomcat-embed-core-9.0.69.jar:4.0.FR]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227) ~[tomcat-embed-core-9.0.69.jar:9.0.69]
...
Metadata
Version: 3.4.0+ and 2.1.7+