JODA LocalDate作为Jersey的QueryParam

时间:2014-06-03 13:01:42

标签: java web-services rest jersey

我搜索Google很多,但我发现答案非常复杂,与JODA 2.3版不兼容。

我需要在我的球衣服务中使用LocalDate作为QueryParam, 但QueryParam不支持LocalDate作为有效的数据类型。

是否有任何其他注释或解决方法将LocalDate作为QueryParam处理?

@GET @Path("/available")
public List < AvailableClient > getAvailable(@QueryParam(value = "client") ClientDto client, @QueryParam(value = "from") LocalDate from, @QueryParam(value = "to") LocalDate to) {
    return client.get(from, to);
}

这是错误: [[致命]没有为public

类型的参数找到注入源

1 个答案:

答案 0 :(得分:1)

您可以将日期作为长值接收,并使用此值创建LocalDate。

@GET @Path("/available")
public List < AvailableClient > getAvailable(@QueryParam(value = "client") ClientDto   client, @QueryParam(value = "from") long from, @QueryParam(value = "to") long to) {
   return client.get(new LocalDate(from), new LocalDate(to));
}

如果您真的需要将LocalDate作为QueryParam接收,则需要创建ParamConverter。 这不是很简单,我更喜欢long选项,因为你可以在java中使用long和每个日期api。

Here是ParamConverter的一个很好的例子。

相关问题