有没有人通过 POJO 映射到 JSON 让 Jersey 在 Google AppEngine 工作?我现在已经花了几个小时来让这个工作,但我被困在两个地方。在 Jetty 本地运行我比在 AppEngine 更进了一步,但我还没有到那里。这是我遇到的两个问题:
本地:
码头产生以下错误:
SEVERE: A message body writer for Java class
nilsnett.chinese.backend.BusinessObject, and Java type class
nilsnett.chinese.backend.BusinessObject, and MIME media type
application/json was not found
nilsnett.chinese.backend.BusinessObject
是我创建的一个普通的 Java 类,如下所示:
package nilsnett.chinese.backend;
import javax.xml.bind.annotation.XmlRootElement;
public class BusinessObject {
public String text;
public int value;
}
这里有什么问题?
在 AppEngine:
Uncaught exception from servlet
java.lang.IncompatibleClassChangeError
现在我在本地也遇到了这个错误,这与我在本地引用asm-3.3.1.jar
Jersey 所依赖的 asm-4.0.jar 和asm-4.0.jar,
which AppEngine depends on. If I _only_ referenced
asm-4.0.jar 的事实有关,我会在这里得到同样的错误。在 AppEngine 中引用两者显然不能很好地工作。我怎样才能解决这个问题?
更多数据:
- 本地错误的完整 Jetty 日志在这里
- 来自 AppEngine 的完整异常日志在这里
- 我的 web.xml
SDK的参考:
- AppEngine v1.7.4
- Java SE 1.6
与泽西岛相关的罐子参考:
- Jersey-bundle-1.17.jar
- asm-3.3.1.jar
- Jettison-1.1jar
我正在 Windows 8 上的 Eclipse Juno 中进行开发。