【发布时间】:2021-04-29 02:17:49
【问题描述】:
在 Jersey 升级期间,支持 Java11 的 Jersey 2.29 不支持来自 com.sun.jersey 的大量 api。以下 API 的替代品应该是什么?
ServletHolder sh = new ServletHolder(ServletContainer.class);
sh.setInitParameter("com.sun.jersey.config.property.resourceConfigClass",
"com.sun.jersey.api.core.PackagesResourceConfig");
sh.setInitParameter(PackagesResourceConfig.PROPERTY_PACKAGES,
String.format("%s;%s", ThrowableMapper.class.getPackage().getName(), packageName));
sh.setInitParameter("com.sun.jersey.api.json.POJOMappingFeature", Boolean.TRUE.toString());
ServletContextHandler context = new ServletContextHandler();
if (contextPath.indexOf("/") == 0) {
contextPath = contextPath.substring(1);
}
context.setContextPath(String.format("/api/mid/%s", contextPath));
context.addServlet(sh, "/*");
【问题讨论】:
-
@zhulien :迁移指南没有那么有用。太抽象了:(
-
@PaulSamsotha : 有一个很好的设置,我想知道是否在 Jersey 2.9 中启用
POJOMappingFeature我们可以添加 `jersey-media-json-jackson` 扩展模块。 -
感谢@zhulien 指点指南。
标签: jersey-2.0 java-11 jersey-1.0