【发布时间】:2017-01-31 04:56:52
【问题描述】:
如何配置嵌入式 Jetty 和 Java Jersey 以接受 JSON POJO? (配置应该以编程方式完成,而不是在 web.xml 文件中。)
我正在使用 Jetty 9.4.1 Java Jersey 2.25.1
(我在网上搜索过,更多信息是针对过时版本的 Jetty/Jersey 或用于 .xml 文件配置。)
【问题讨论】:
标签: java json jersey jetty embedded-jetty
如何配置嵌入式 Jetty 和 Java Jersey 以接受 JSON POJO? (配置应该以编程方式完成,而不是在 web.xml 文件中。)
我正在使用 Jetty 9.4.1 Java Jersey 2.25.1
(我在网上搜索过,更多信息是针对过时版本的 Jetty/Jersey 或用于 .xml 文件配置。)
【问题讨论】:
标签: java json jersey jetty embedded-jetty
如果只是添加如下依赖
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
<version>${jersey2.version}</version>
</dependency>
这应该足够了。 JacksonFeature 所需的注册应该 1自动执行。
1 - 应该 因为如果您正在创建 uber jar,则需要注意不要覆盖自动发现所需的文件.通常,这可以通过使用 maven-shade-plugin 来避免。这将在MessageBodyProviderNotFoundException while running jar from command line 中进一步讨论。
另请参阅:
JacksonFeature 的其他方式。【讨论】:
我自己解决了。我没有添加任何依赖项。我只是添加了一个方法字符串参数:
@PUT
@Path("/{accountID}")
@Consumes("application/json")
@Produces("application/json")
public final Response testPut(String jsonString) { ...
它确实捕获了 JSON 输入字符串!
【讨论】: