我正在尝试将Jersey 1.0客户端应用程序迁移到Jersey 2.0。 到目前为止,除了内容类型:/application/fastinfoset 之外,一切正常
我使用了Jeysey 2.21.1 BOM,因此球衣快速信息集包含在依赖项中。
我的问题是我没有找到如何注册FastInfoSet。
我获得消息读取器正文异常。
您需要注册符合泽西岛 2 的 FI 提供商。类似的东西
private Client client() {
ClientConfig config = new ClientConfig();
config.register(FastInfosetJAXBElementProvider.class);
config.register(FastInfosetRootElementProvider.class);
config.property(ClientProperties.CONNECT_TIMEOUT, 5000);
config.property(ClientProperties.READ_TIMEOUT, 15000);
return JerseyClientBuilder.createClient(config);
}
提供程序类来自此存储库:
https://github.com/jecklgamis/jersey-fastinfoset-provider
希望这有帮助。
我为我在泽西岛的 JIRA 上创建的问题创建了一个演示。 该代码适用于应用程序/快速信息集 https://java.net/jira/browse/JERSEY-3053
我为实体和输入流工作。 我还没有涵盖MessageBodyCover。