这个课程在哪里" HttpContext"存在于glassfish jersey 2.9?

时间:2016-01-05 08:55:48

标签: jersey

这门课程在哪里" HttpContext"存在于glassfish jersey 2.9中。我正在使用泽西1.17.1来使用HttpContext,它存在于包com.sun.jersey.api.core.HttpContext中。 但我确实没有在球衣2.9中找到它。

2 个答案:

答案 0 :(得分:1)

Jersey 2.x有很多突破性的变化,部分原因是JAX-RS标准在Jersey 1.x中加入了很多东西。

引用https://jersey.java.net/documentation/latest/migration.html#mig-1.x

  

本章是从Jersey 1.x切换的人员的迁移指南。由于许多Jersey 1.x功能成为JAX-RS 2.0标准的一部分,导致包名称发生变化,我们认为这是进行更重要的不兼容重构的好时机,这将使我们能够介绍一些更有趣的新功能未来的功能。结果,Jersey 1.x和Jersey 2.0之间存在许多不兼容性。本章总结了如何将Jersey 1.x中的概念迁移到Jersey / JAX-RS 2.0概念。

迁移章节没有说明HttpContext发生了什么,但它不再以旧的形式存在。

答案 1 :(得分:0)

在 Jersey 2.x 版本中不提供 HttpContext 的直接替换,不幸的是,migration 指南中没有提到这一重大更改细节。如果我们深入挖掘接口HttpContext,而不是搜索直接替换,则基于以下方法摘要method summary refer

我们可以推断,我们可以简单地使用以下开箱即用的替代方案,而不是使用 HttpContext

  • 使用 HttpContext#getRequest 代替 @Context ContainerRequestContext crc
  • 使用 HttpContext#getResponse 代替 @Context ContainerResponseContext crc
  • 使用 HttpContext#getUriInfo 代替 @Context UriInfo uriInfo
  • 使用 HttpContext#getProperties 代替 ContainerRequestContext#getProperty