Uploaded image for project: 'Zeppelin'
  1. Zeppelin
  2. ZEPPELIN-2628

NotebookServer.java[onMessage]:377) - Can't handle message com.google.gson.JsonParseException: cannot serialize org.apache.zeppelin.display.Input; did you forget to register a subtype?

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 0.8.0
    • None
    • zeppelin-server
    • None
    • Any

    Description

      I have the following issue with imported notebooks: After import, clicking on the notebook (opening it) will give a page with navbar and blank (grey) notebook content. The log file show the following exceptions:

      NotebookServer.java[onMessage]:377) - Can't handle message
      com.google.gson.JsonParseException: cannot serialize org.apache.zeppelin.display.Input; did you forget to register a subtype?
      

      (stacktrace see below).

      It is not possible to open the notebook. As a workaround you can go to "Jobs" and run the notebook from there. After the notebook has run, it opens without problems.
      The error appears again if the notebook is exported to JSON and re-imported again.

      For testing:

      • I have attached a notebook which JSON which shows the behaviour.
      • The attached notebook requires net.finmath:finmath-lib:2.4.2. in the spark interpreter and the Helium packages of ultimate-scatter-plot.

      Stacktrace:

       INFO [2017-06-07 18:04:56,233] ({qtp1096283470-152} NotebookServer.java[sendNote]:799) - New operation from 185.111.192.4 : 59047 : fries : GET_NOTE : 2CE928E12
      ERROR [2017-06-07 18:04:56,234] ({qtp1096283470-152} NotebookServer.java[onMessage]:377) - Can't handle message
      com.google.gson.JsonParseException: cannot serialize org.apache.zeppelin.display.Input; did you forget to register a subtype?
              at org.apache.zeppelin.display.RuntimeTypeAdapterFactory$1.write(RuntimeTypeAdapterFactory.java:129)
              at com.google.gson.TypeAdapter$1.write(TypeAdapter.java:191)
              at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:68)
              at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.write(MapTypeAdapterFactory.java:209)
              at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.write(MapTypeAdapterFactory.java:146)
              at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:68)
              at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.write(ReflectiveTypeAdapterFactory.java:89)
              at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.write(ReflectiveTypeAdapterFactory.java:195)
              at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:68)
              at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.write(ReflectiveTypeAdapterFactory.java:89)
              at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.write(ReflectiveTypeAdapterFactory.java:195)
              at com.google.gson.TypeAdapter.toJsonTree(TypeAdapter.java:230)
              at org.apache.zeppelin.json.NotebookTypeAdapterFactory$1.write(NotebookTypeAdapterFactory.java:58)
              at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:68)
              at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.write(CollectionTypeAdapterFactory.java:96)
              at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.write(CollectionTypeAdapterFactory.java:60)
              at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:68)
              at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.write(ReflectiveTypeAdapterFactory.java:89)
              at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.write(ReflectiveTypeAdapterFactory.java:195)
              at com.google.gson.internal.bind.ObjectTypeAdapter.write(ObjectTypeAdapter.java:105)
              at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:68)
              at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.write(MapTypeAdapterFactory.java:209)
              at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.write(MapTypeAdapterFactory.java:146)
              at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:68)
              at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.write(ReflectiveTypeAdapterFactory.java:89)
              at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.write(ReflectiveTypeAdapterFactory.java:195)
              at com.google.gson.Gson.toJson(Gson.java:582)
              at com.google.gson.Gson.toJson(Gson.java:561)
              at com.google.gson.Gson.toJson(Gson.java:516)
              at com.google.gson.Gson.toJson(Gson.java:496)
              at org.apache.zeppelin.socket.NotebookServer.serializeMessage(NotebookServer.java:414)
              at org.apache.zeppelin.socket.NotebookServer.sendNote(NotebookServer.java:823)
              at org.apache.zeppelin.socket.NotebookServer.onMessage(NotebookServer.java:243)
              at org.apache.zeppelin.socket.NotebookSocket.onWebSocketText(NotebookSocket.java:59)
              at org.eclipse.jetty.websocket.common.events.JettyListenerEventDriver.onTextMessage(JettyListenerEventDriver.java:128)
              at org.eclipse.jetty.websocket.common.message.SimpleTextMessage.messageComplete(SimpleTextMessage.java:69)
              at org.eclipse.jetty.websocket.common.events.AbstractEventDriver.appendMessage(AbstractEventDriver.java:65)
              at org.eclipse.jetty.websocket.common.events.JettyListenerEventDriver.onTextFrame(JettyListenerEventDriver.java:122)
              at org.eclipse.jetty.websocket.common.events.AbstractEventDriver.incomingFrame(AbstractEventDriver.java:161)
              at org.eclipse.jetty.websocket.common.WebSocketSession.incomingFrame(WebSocketSession.java:309)
              at org.eclipse.jetty.websocket.common.extensions.ExtensionStack.incomingFrame(ExtensionStack.java:214)
              at org.eclipse.jetty.websocket.common.Parser.notifyFrame(Parser.java:220)
              at org.eclipse.jetty.websocket.common.Parser.parse(Parser.java:258)
              at org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection.readParse(AbstractWebSocketConnection.java:632)
              at org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection.onFillable(AbstractWebSocketConnection.java:480)
              at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
              at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
              at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
              at java.lang.Thread.run(Thread.java:748)
      

      Attachments

        1. Regression of Continuation Value.json
          407 kB
          Christian Fries

        Issue Links

          Activity

            People

              Unassigned Unassigned
              email@christian-fries.de Christian Fries
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated: