Hi developers!
I've got a problem with active api today. This code worked ok on
Friday, but today it crashes. I use new library (8 apr).
Code:
Wavelet wavelet = fetchWavelet(waveIdObj, new
WaveletId(waveIdObj.getDomain(), waveletId), url);
Outgoing JSON:
com.google.wave.api.AbstractRobot makeRpc: JSON request to be sent:
[{"method":"wave.robot.fetchWave","id":"op15","params":
{"waveId":"googlewave.com!w+qDKVpoCDE","waveletId":"googlewave.com!conv
+root"}}]
Response:
com.google.wave.api.AbstractRobot makeRpc: Response returned:
[{"id":"op15","data":{"message":"b+qDKVpoCDF","blips":{"b+qDKVpoCDF":
{"lastModifiedTime":1271675956931,"content":"\n oipoip
\nop","contributors":
["[email protected]","[email protected]"],"waveletId":"googlewave.com!
conv+root","blipId":"b+qDKVpoCDF","waveId":"googlewave.com!w
+qDKVpoCDE","parentBlipId":{},"annotations":[{"range":{"start":0,"end":
11},"name":"user/d/qDKVpoCD","value":"[email protected],
1271675955224,"},{"range":{"start":0,"end":8},"name":"conv/
title","value":""},{"range":{"start":0,"end":
8},"name":"lang","value":"unknown"},{"range":{"start":8,"end":
11},"name":"lang","value":"nl"},{"range":{"start":11,"end":
11},"name":"user/e/
qDKVpoCD","value":"[email protected]"}],"childBlipIds":
[],"elements":{"1":{"properties":
{"taskId":"1778712","assigns":"","startdate":"","status":"0","priority":"1","duedate":"","url":"http://
wrikerobot2.appspot.com/gadget.xml"},"type":"GADGET"},"0":
{"properties":{},"type":"LINE"},"8":{"properties":
{},"type":"LINE"}},"version":
19,"creator":"[email protected]"}},"blipId":{},"waveletData":
{"tags":[],"lastModifiedTime":
1271675956931,"title":"oipoip","waveletId":"googlewave.com!conv
+root","participantRoles":
{"[email protected]":"FULL","[email protected]":"FULL"},"rootBlipId":"b
+qDKVpoCDF","dataDocuments":{},"waveId":"googlewave.com!w
+qDKVpoCDE","creationTime":1271675946794,"participants":
["[email protected]","[email protected]"],"creator":"[email protected]","version":
19}}}]
And the exception:
com.google.gson.JsonParseException: The JsonDeserializer
StringTypeAdapter failed to deserialized json object {} given the type
class java.lang.String
at
com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:
63)
at
com.google.gson.JsonDeserializationVisitor.invokeCustomDeserializer(JsonDeserializationVisitor.java:
88)
at
com.google.gson.JsonObjectDeserializationVisitor.visitFieldUsingCustomHandler(JsonObjectDeserializationVisitor.java:
117)
at
com.google.gson.ObjectNavigator.navigateClassFields(ObjectNavigator.java:
150)
at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:123)
at
com.google.gson.JsonDeserializationContextDefault.fromJsonObject(JsonDeserializationContextDefault.java:
73)
at
com.google.gson.JsonDeserializationContextDefault.deserialize(JsonDeserializationContextDefault.java:
51)
at com.google.gson.DefaultTypeAdapters
$MapTypeAdapter.deserialize(DefaultTypeAdapters.java:532)
at com.google.gson.DefaultTypeAdapters
$MapTypeAdapter.deserialize(DefaultTypeAdapters.java:497)
at
com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:
50)
at
com.google.gson.JsonDeserializationVisitor.invokeCustomDeserializer(JsonDeserializationVisitor.java:
88)
at
com.google.gson.JsonDeserializationVisitor.visitUsingCustomHandler(JsonDeserializationVisitor.java:
76)
at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:98)
at
com.google.gson.JsonDeserializationContextDefault.fromJsonObject(JsonDeserializationContextDefault.java:
73)
at
com.google.gson.JsonDeserializationContextDefault.deserialize(JsonDeserializationContextDefault.java:
51)
at
com.google.wave.api.impl.JsonRpcResponseGsonAdaptor.deserialize(JsonRpcResponseGsonAdaptor.java:
72)
at
com.google.wave.api.impl.JsonRpcResponseGsonAdaptor.deserialize(JsonRpcResponseGsonAdaptor.java:
42)
at
com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:
50)
at
com.google.gson.JsonDeserializationVisitor.invokeCustomDeserializer(JsonDeserializationVisitor.java:
88)
at
com.google.gson.JsonDeserializationVisitor.visitUsingCustomHandler(JsonDeserializationVisitor.java:
76)
at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:98)
at
com.google.gson.JsonDeserializationContextDefault.fromJsonObject(JsonDeserializationContextDefault.java:
73)
at
com.google.gson.JsonDeserializationContextDefault.deserialize(JsonDeserializationContextDefault.java:
51)
at com.google.gson.DefaultTypeAdapters
$CollectionTypeAdapter.deserialize(DefaultTypeAdapters.java:472)
at com.google.gson.DefaultTypeAdapters
$CollectionTypeAdapter.deserialize(DefaultTypeAdapters.java:434)
at
com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:
50)
at
com.google.gson.JsonDeserializationVisitor.invokeCustomDeserializer(JsonDeserializationVisitor.java:
88)
at
com.google.gson.JsonDeserializationVisitor.visitUsingCustomHandler(JsonDeserializationVisitor.java:
76)
at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:98)
at
com.google.gson.JsonDeserializationContextDefault.fromJsonArray(JsonDeserializationContextDefault.java:
64)
at
com.google.gson.JsonDeserializationContextDefault.deserialize(JsonDeserializationContextDefault.java:
49)
at com.google.gson.Gson.fromJson(Gson.java:495)
at com.google.gson.Gson.fromJson(Gson.java:444)
at com.google.gson.Gson.fromJson(Gson.java:396)
at com.google.wave.api.AbstractRobot.makeRpc(AbstractRobot.java:1087)
at com.google.wave.api.AbstractRobot.fetchWavelet(AbstractRobot.java:
560)
at com.google.wave.api.AbstractRobot.fetchWavelet(AbstractRobot.java:
533)
at
wrikerobot.WrikeRobotServlet.appendBlipToWave2(WrikeRobotServlet.java:
117)
at
wrikerobot.GetUpdatesFromWrikeServlet.addUpdateComment(GetUpdatesFromWrikeServlet.java:
93)
at
wrikerobot.GetUpdatesFromWrikeServlet.addUpdateTaskComments(GetUpdatesFromWrikeServlet.java:
73)
at
wrikerobot.GetUpdatesFromWrikeServlet.doPost(GetUpdatesFromWrikeServlet.java:
164)
at
wrikerobot.GetUpdatesFromWrikeServlet.doGet(GetUpdatesFromWrikeServlet.java:
37)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:
511)
at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1166)
at
com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:
97)
at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
at
com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:
35)
at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
at
com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:
43)
at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:
388)
at
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:
216)
at
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:
182)
at
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:
765)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:
418)
at
com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:
238)
at
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:
152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:
542)
at org.mortbay.jetty.HttpConnection
$RequestHandler.headerComplete(HttpConnection.java:923)
at
com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:
76)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at
com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:
135)
at
com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:
243)
at com.google.apphosting.base.RuntimePb$EvaluationRuntime
$6.handleBlockingRequest(RuntimePb.java:5485)
at com.google.apphosting.base.RuntimePb$EvaluationRuntime
$6.handleBlockingRequest(RuntimePb.java:5483)
at
com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:
24)
at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:
398)
at com.google.net.rpc.impl.Server$2.run(Server.java:852)
at
com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:
56)
at
com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan(LocalTraceSpanBuilder.java:
536)
at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
at com.google.net.rpc.impl.Server.processRequest(Server.java:369)
at
com.google.net.rpc.impl.ServerConnection.messageReceived(ServerConnection.java:
442)
at
com.google.net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java:
319)
at
com.google.net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java:
290)
at com.google.net.async.Connection.handleReadEvent(Connection.java:
474)
at
com.google.net.async.EventDispatcher.processNetworkEvents(EventDispatcher.java:
831)
at
com.google.net.async.EventDispatcher.internalLoop(EventDispatcher.java:
207)
at com.google.net.async.EventDispatcher.loop(EventDispatcher.java:
103)
at
com.google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java:
251)
at com.google.apphosting.runtime.JavaRuntime
$RpcRunnable.run(JavaRuntime.java:404)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.UnsupportedOperationException
at com.google.gson.JsonElement.getAsString(JsonElement.java:188)
at com.google.gson.DefaultTypeAdapters
$StringTypeAdapter.deserialize(DefaultTypeAdapters.java:772)
at com.google.gson.DefaultTypeAdapters
$StringTypeAdapter.deserialize(DefaultTypeAdapters.java:764)
at
com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:
50)
... 84 more
Thanks, Evgeniy
--
You received this message because you are subscribed to the Google Groups
"Google Wave API" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-wave-api?hl=en.