wbstr / vaadin-multifileupload

12 stars 23 forks source link

java.lang.NoSuchMethodError with 3.0.1 and Vaadin 8.2.0.beta1 #59

Closed kamuffe closed 6 years ago

kamuffe commented 6 years ago

Hi.

I tried to upgrade from Vaadin 8.1.6 to 8.2.0.beta1 and got the following exception when navigating to a view which contains multi file upload addon:


com.vaadin.server.ServerRpcManager$RpcInvocationException: Unable to invoke method click in com.vaadin.shared.ui.button.ButtonServerRpc
    at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:159)
    at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:116)
    at com.vaadin.server.communication.ServerRpcHandler.handleInvocation(ServerRpcHandler.java:445)
    at com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:410)
    at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:274)
    at com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:90)
    at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:40)
    at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1588)
    at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:445)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at com.myapp.app_base.AccessLogFilter.doFilter(AccessLogFilter.java:49)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:155)
    ... 29 more
Caused by: com.vaadin.event.ListenerMethod$MethodException: Invocation of method buttonClick in com.github.appreciated.app.layout.builder.providers.AbstractNavigationElementComponentProvider$$Lambda$120/1850797107 failed.
    at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:519)
    at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:273)
    at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:237)
    at com.vaadin.server.AbstractClientConnector.fireEvent(AbstractClientConnector.java:1014)
    at com.vaadin.ui.Button.fireClick(Button.java:384)
    at com.vaadin.ui.Button$1.click(Button.java:57)
    ... 34 more
Caused by: java.lang.NoSuchMethodError: com.vaadin.ui.Grid$Column.setDescriptionGenerator(Lcom/vaadin/ui/components/grid/DescriptionGenerator;)Lcom/vaadin/ui/Grid$Column;
    at com.wcs.wcslib.vaadin.widget.multifileupload.ui.UploadQueueGrid.<init>(UploadQueueGrid.java:39)
    at com.wcs.wcslib.vaadin.widget.multifileupload.ui.UploadStatePanel.<init>(UploadStatePanel.java:53)
    at com.wcs.wcslib.vaadin.widget.multifileupload.ui.UploadStatePanel.<init>(UploadStatePanel.java:56)
    at com.wcs.wcslib.vaadin.widget.multifileupload.ui.MultiFileUpload.createStatePanel(MultiFileUpload.java:71)
    at com.wcs.wcslib.vaadin.widget.multifileupload.ui.MultiFileUpload.<init>(MultiFileUpload.java:36)
    at com.wcs.wcslib.vaadin.widget.multifileupload.ui.MultiFileUpload.<init>(MultiFileUpload.java:41)
    at com.wcs.wcslib.vaadin.widget.multifileupload.ui.MultiFileUpload.<init>(MultiFileUpload.java:45)
    at com.myapp.frontend.ui.component.UserFileEditorTab.<init>(UserFileEditorTab.java:84)
    at com.myapp.frontend.ui.component.PersonEditorWrapper.<init>(PersonEditorWrapper.java:79)
    at com.myapp.app_base.view.AbstractView.enter(AbstractView.java:125)
    at com.vaadin.navigator.Navigator.performNavigateTo(Navigator.java:778)
    at com.vaadin.navigator.Navigator.lambda$navigateTo$9a874efd$1(Navigator.java:702)
    at com.vaadin.navigator.ViewBeforeLeaveEvent.navigate(ViewBeforeLeaveEvent.java:54)
    at com.vaadin.navigator.View.beforeLeave(View.java:79)
    at com.vaadin.navigator.Navigator.runAfterLeaveConfirmation(Navigator.java:730)
    at com.vaadin.navigator.Navigator.navigateTo(Navigator.java:701)
    at com.vaadin.navigator.Navigator.navigateTo(Navigator.java:678)
    at com.github.appreciated.app.layout.builder.providers.AbstractNavigationElementComponentProvider.lambda$setNavigationClickListener$cb8a9285$1(AbstractNavigationElementComponentProvider.java:16)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:499)
    ... 39 more```
bonifacechacha commented 6 years ago

I am facing similar problem. It works well on vaadin 8.2.0.alpha3 though. This error occurs on 8.2.0.beta1

kamuffe commented 6 years ago

Occurs with Vaadin 8.2.0.rc1 as well

I downloaded the code and recompiled it with Vaadin 8.2.0.rc1 and then it worked. So might be no code change but only recompile with neweVaadin version.

mmerruko commented 6 years ago

@kamuffe Sorry I was hasty and didn't read your comment, though you are right there is no code change required.

This is because com.vaadin.ui.components.grid.DescriptionGenerator has been deprecated and the Grid uses com.vaadin.ui.DescriptionGenerator instead. This breaks backwards binary compatibility in this case as the method referred to in the compiled classes can't be found.

FollowSteph commented 6 years ago

I have the same issue too. Would it be possible to have it recompiled and added to maven as version 3.0.2 just so that we can consistently use it through the Maven pom files? I would offer to do it but I don't have access to publish it, etc...

nixty commented 6 years ago

Pls. Help! Help! Update to maven as version 3.0.2. Fix java.lang.NoSuchMethodError: com.vaadin.ui.Grid$Column.setDescriptionGenerator

urkl commented 6 years ago

+1

ToArnld commented 6 years ago

+1

This currently blocks us from upgrading to Vaadin 8.3 (from 8.1)

nixty commented 6 years ago

download addon, build it with vaadin 8.2 and install in local maven as 3.0.2 version

arabedini commented 6 years ago

+1

This currently blocks us from upgrading to Vaadin 8.3 (from 8.1)

pj999 commented 6 years ago

Yep I have same issue with 8.3.1. Cant upgrade from 8.1 because of blocking.

tuscland commented 6 years ago

An official release 3.0.2 would be highly appreciated, we're stuck to 8.1.

kumm commented 6 years ago

released as 4.0