sameeraroshan / visjs

visjs vaadin addon
Apache License 2.0
10 stars 13 forks source link

java.lang.AbstractMethodError with 7.4.0 #2

Closed evenbits closed 9 years ago

evenbits commented 9 years ago

Using Vaadin 7.4.0 errors like this occur, while hovering over nodes. Using 7.3.3 it works just fine.

java.lang.AbstractMethodError: org.vaadin.visjs.networkDiagram.NetworkDiagram$5.call(Lelemental/json/JsonArray;)V
    at com.vaadin.server.JavaScriptCallbackHelper$1.call(JavaScriptCallbackHelper.java:80)
    at sun.reflect.GeneratedMethodAccessor53.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:483)
    at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:168)
    at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:118)
    at com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:291)
    at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:184)
    at com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:92)
    at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:41)
    at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1408)
    at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:350)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:503)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:136)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:526)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:655)
    at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:222)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1566)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1523)
    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)
sameeraroshan commented 9 years ago

Vaadin has changed their implantation of JavaScriptFunction. will have to stop devaloping if they continue to break the api like this. i have to change the base of the plugin to work with vaadin 7.4. this may take a while because im developing 3dGraph section right now.

Swoorup commented 9 years ago

Agreed, I am complaining to vaadin for breaking your wonderful addon :(

hesara commented 9 years ago

We at Vaadin do try hard to avoid breaking API when possible, but sometimes it cannot be avoided. Our policy is that

For every release build of the framework, we do compare the public and protected API with the previous version and any changes must be explicitly approved by the product owner.

Many parts of the core API have essentially stayed unchanged (although have been expanded upon a lot) since 2009, some parts of the server side API since the early 2000s apart from a package name change that took place when the product was renamed Vaadin in 2009.

As for the specific change here, the change in JavaScriptFunction was the result of us needing to change the JSON library that we use. Unfortunately, there are some places in the public API of Vaadin where the library is exposed to the user, but fixing these in add-on or application code should be trivial.

Swoorup commented 9 years ago

I got it all fixed, with help from vaadin community.

You can pull my changes from https://github.com/Swoorup/visjs

sameeraroshan commented 9 years ago

changes are merged to master. thanks for the pull Swoorup.

sameeraroshan commented 9 years ago

fixed in version 1.0.1.0