如何将多个路径参数合并到一个对象中



我有一条路线,看起来像这样:

/foobar/123/2

我想使用所有三个参数来获取单个对象,以便我可以使用这样的东西:

@Path("/{type}/{id}/{version}")
public Response getEntity(Entity entity);

而不是:

@Path("/{type}/{id}/{version}")
public Response getEntity(@PathParam("type") Type type, @PathParam("id") Long entityId, @PathParam("version") Long version);

ParamConverter看起来很有希望,但它只能处理一个String而不是三个。还有什么我可以尝试的吗?

我相信你不走运。

来自 JSR-000339 "Java[TM] API for RESTful Web Services 2.0 Final Release for Assessment ">

支持以下类型

  1. 通过注册的 ParamConverterProvider 提供 ParamConverter 的类型。有关更多信息,请参阅 Javadoc 了解这些类。
  2. 基元类型
  3. 具有接受单个 String 参数的构造函数的类型。
  4. 具有名为 valueOf 或 fromString 的静态方法的类型,该方法具有返回该类型的实例的单个 String 参数。如果这两个方法都存在,则必须使用 valueOf 除非类型是枚举,在这种情况下必须使用 fromString U。
  5. 列出、设置或排序集,其中 T 满足上述 3 或 4

相关内容

  • 没有找到相关文章

最新更新