My robot does the following in the constructor: setupOAuth(CONSUMER_KEY, CONSUMER_SECRET, rpcserverurl); setAllowUnsignedRequests(true);
Everything was working when I tested the server and robot 3 days ago. I hadn't even restarted the server or the robot since then. Why would I be getting: net.oauth.OAuthProblemException: timestamp_refused Patrick Jennings On Fri, Apr 22, 2011 at 12:39 AM, Yuri Z <[email protected]> wrote: > Please make sure your robot calls setupOAuth() method and that the > key/secret are correct. Try to re-register the robot on the server. > > 2011-04-21 20:21:13.793:DBUG::servlet holder= > org.waveprotocol.box.server.robots.active.ActiveApiServlet-278604369 > 2011-04-21 20:21:13.793:DBUG::chain= null > Apr 21, 2011 8:21:13 PM > org.waveprotocol.box.server.robots.dataapi.BaseApiServlet > processOpsRequest > INFO: The message does not conform to OAuth > net.oauth.OAuthProblemException: timestamp_refused > at > net.oauth.SimpleOAuthValidator.validateTimestamp(SimpleOAuthValidator.java:218) > at > net.oauth.SimpleOAuthValidator.validateTimestampAndNonce(SimpleOAuthValidator.java:208) > at > net.oauth.SimpleOAuthValidator.validateMessage(SimpleOAuthValidator.java:147) > at > org.waveprotocol.box.server.robots.dataapi.BaseApiServlet.processOpsRequest(BaseApiServlet.java:105) > at org.waveprotocol.box.server.robots.activ > > > 2011/4/22 Patrick Jennings <[email protected]> > > > I have attached a server log. What is happening is: > > 1. I add the registered robot to a wave > > 2. The robot correctly receives the event and starts processing the > > onWaveletSelfAdded method. > > 3. The robot gets to the submit call to create a new wave > > 4. Robot receives empty list from submit and throws a > NullPointerException > > at: > > Map<ParamsProperty, Object> data = jsonRpcResponse.getData(); > > > > > > On Fri, Apr 22, 2011 at 12:13 AM, Yuri Z <[email protected]> wrote: > > > > > > Did you try to check the server logs? Can you attach the outgoing jsons > > and > > > incoming? > > > > > > 2011/4/22 Patrick Jennings <[email protected]> > > > > > > > I am using the following method in my robot to process the list > > > > of JsonRpcResponse objects > > > > returned from a call to com.google.wave.api.AbstractRobot.submit: > > > > > > > > private String getParam(List<JsonRpcResponse> response, > ParamsProperty > > p) { > > > > for(JsonRpcResponse jsonRpcResponse : response) { > > > > Map<ParamsProperty, Object> data = jsonRpcResponse.getData(); > > > > String param = (String) data.get(p); > > > > if(param != null) > > > > return param; > > > > } > > > > return null; > > > > } > > > > (from: > > > > > > > http://www.mail-archive.com/[email protected]/msg04969.html > > > > ) > > > > > > > > This is very useful since I can do something like: > > > > String newwaveid = getParam(submit(newwave, > > > > rpcserverurl), ParamsProperty.WAVE_ID); > > > > to get back the id of the newly created wave from the WIAB server. > > > > > > > > This was working fine until a few days ago when I started getting > > > > a NullPointerException > > > > from the line: > > > > Map<ParamsProperty, Object> data = jsonRpcResponse.getData(); > > > > > > > > It seems that the submit call is now returning an empty > > > > list of JsonRpcResponse objects. > > > > Has anything changing in the last couple of days that could have > caused > > > > this? > > > > > > > > Any help would be greatly appreciated. I have to give a demo of my > > robot > > > > tomorrow > > > > so I am in desperate need of some assistance. > > > > > > > > Thank you, > > > > Patrick Jennings > > > > > > > > >
