Google app engine RESTlet 2.0教程应用程序在appengine上不起作用

Google app engine RESTlet 2.0教程应用程序在appengine上不起作用,google-app-engine,rest,gwt,restlet,restlet-2.0,Google App Engine,Rest,Gwt,Restlet,Restlet 2.0,我一直在玩的源代码可从 GWT/GAE应用程序在开发模式下工作,但是在部署它时,服务器总是以JSON格式返回响应 我使用的是Restlet 2.0测试JAR,还包括了相关库 谢谢有两件事需要考虑: 版本 服务器端应用程序需要使用Restlet的GAE版本,客户端应用程序需要使用GWT。两者都不够。因此,这两个应用程序在中是独立的项目。因此,请确保为每一方使用适当的版本 对象/表示转换/序列化和扩展 我相信,在Restlet 2.0中,当使用HTTP方法注释的类方法返回Java对象,并且没有指定如

我一直在玩的源代码可从

GWT/GAE应用程序在开发模式下工作,但是在部署它时,服务器总是以JSON格式返回响应

我使用的是Restlet 2.0测试JAR,还包括了相关库


谢谢

有两件事需要考虑:

版本 服务器端应用程序需要使用Restlet的GAE版本,客户端应用程序需要使用GWT。两者都不够。因此,这两个应用程序在中是独立的项目。因此,请确保为每一方使用适当的版本

对象/表示转换/序列化和扩展 我相信,在Restlet 2.0中,当使用HTTP方法注释的类方法返回Java对象,并且没有指定如何序列化它(转换为表示形式)时,Restlet将遵循类路径中实现此功能的Restlet扩展

在本教程中,服务器端应用程序包括以下jar:“org.restlet.ext.jackson:jackson扩展,用于生成联系人资源的JSON表示”——我相信这就是响应是JSON的原因;框架遵从扩展,扩展将对象转换为JSON表示

因此,例如,如果希望框架自动将对象序列化为XML,可以从类路径中删除Jackson扩展JAR,而不是包含。我相信这将导致框架将对象序列化为XML

的wiki页面列出了框架支持的各种转换,以及支持这些转换的模块


我遇到了您现在遇到的类似问题:

正如我在自己的回答中所描述的那样,我在做了很多修改后,终于使它工作了


从那时起,我切换到了。

我将测试JAR切换到了不稳定的JAR,它现在可以工作了。顺便问一下,如果不是JSON,那么所需的表示格式是什么?gwt rpc:D我主要使用restlet与android客户端通信……可能也是一个公共api。我过去在GAE上使用restlet。这给了我很多麻烦。从那时起,我就开始使用运动衫,它是开箱即用的。我一直在使用正确的版本。我认为客户端在HTTP头中设置它接受的返回类型的格式,服务器端的框架将透明地返回正确的类型。是这样吗?看起来就像上面提到的教程。是的,这很有道理。我确实认为类路径中的哪些扩展确实决定了转换器服务可以提供哪些格式。