我正在使用RESTeasy库在J2EE环境中开发一些REST服务。 如果我有这个@POST REST方法:
@POST
@Path("/filter")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_FORM_URLENCODED)
public List<Order> findOrders(
@FormParam("orderfiltercriteria") OrderFilterCriteria orderFilterCriteria,
@FormParam("readcontext") OrderReadContext readContext,
@FormParam("querycontrol") QueryControl queryControl,
@FormParam("fetchpattern") FetchPattern fetchPattern,
@FormParam("loadpattern") LoadPattern loadPattern)
{
...
}
假设客户端通过表单发送这些数据,并假设这些是JSON字符串,我如何以正确的方式转换(服务器端)这些JSON字符串?例如,“readcontext”字段的JSON字符串,如何正确转换为OrderReadContext对象?
我正在使用WidlFly 8.2进行部署。 提前谢谢。
答案 0 :(得分:0)
来自@FormParam文档:
带注释的参数的类型T必须:
- 是原始类型
- 拥有一个接受单个String参数的构造函数
- 有一个名为valueOf或fromString的静态方法,它接受一个&gt; String参数(例如,参见Integer.valueOf(String))
- Be List,Set或SortedSet,其中T满足上面的2或3。生成的集合是只读的。
醇>