I have been following the file upload code in the user guide for platform v7 here but it seems that even data supplier API is used in the example it is supported in legacy platform only.
com.haulmont.cuba.core.global.DevelopmentException: DataSupplier can be injected only into LegacyFrame inheritors
at com.haulmont.cuba.gui.sys.UiControllerDependencyInjector.getInjectedInstance(UiControllerDependencyInjector.java:621)
at com.haulmont.cuba.gui.sys.UiControllerDependencyInjector.doInjection(UiControllerDependencyInjector.java:517)
at com.haulmont.cuba.gui.sys.UiControllerDependencyInjector.injectValues(UiControllerDependencyInjector.java:307)
at com.haulmont.cuba.gui.sys.UiControllerDependencyInjector.inject(UiControllerDependencyInjector.java:111)
at com.haulmont.cuba.web.sys.WebScreens.createScreen(WebScreens.java:237)
What would be the right API to replace it?