Jersey 2.0-m2中的JSON支持
(我在Stackoverflow的第一篇文章,纽约到maven和Jersey;-) 为了开发一个独立的jersey JSON应用程序,我从最新的mvn原型开始Jersey 2.0-m2中的JSON支持,json,maven,jersey,jackson,grizzly,Json,Maven,Jersey,Jackson,Grizzly,(我在Stackoverflow的第一篇文章,纽约到maven和Jersey;-) 为了开发一个独立的jersey JSON应用程序,我从最新的mvn原型开始 mvn archetype:generate org.glassfish.jersey.archetypes:jersey-quickstart-grizzly2 这是默认情况下不支持JSON的。我设法在Eclipse中导入并运行了它,并在我的浏览器中看到了“gottit!”页面。可以通过取消pom.xml和Main.java中
mvn archetype:generate org.glassfish.jersey.archetypes:jersey-quickstart-grizzly2
这是默认情况下不支持JSON的。我设法在Eclipse中导入并运行了它,并在我的浏览器中看到了“gottit!”页面。可以通过取消pom.xml和Main.java中的行的注释来激活JSON支持(?)。因此,在使用maven生成的新项目中,我在pom.xml中激活了以下依赖项:
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-moxy</artifactId>
<version>${jersey-version}</version>
</dependency>
这将导致以下编译错误:“org.glassfish.jersey.media无法解析为变量”
然后我就被卡住了。我哪里出错了
我还想了解“JSON支持”是什么意思?在基于jersey-1.17的早期版本的程序中,我设法在Rest资源上使用@products({MediaType.APPLICATION_JSON})注释。在“参考库”中,我看到四个jackson库。在新项目中,我没有看到任何jackson库。这是因为依赖关系没有正确解析吗?或者jersey-2.0不再使用Jackson了
非常感谢您的帮助。主课堂上的评论似乎完全是误导,因为:
- jersey media moxy不包括org.glassfish.jersey.media.json.JsonJaxbBinder类
- ResourceConfig没有addBinder方法(至少在当前2.0-rc1版本中)
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-json-provider</artifactId>
<version>2.2.0</version>
</dependency>
你能想出来吗?
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-json-provider</artifactId>
<version>2.2.0</version>
</dependency>
rc.register(JacksonJaxbJsonProvider.class);