我有一个完全运行且经过测试的 REST API。为了创建我正在使用 enunciate 的文档。

请求和响应对象是使用 jaxb 从 xsd 文件生成的。在文档中,响应对象被识别,但我的请求主体的类型是 (风俗).

请求正文封装在 JAXBElement 中

代码示例:

@POST
@Consumes(
{
    MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON
})
@Produces(
{
    MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON
})
public ResponseObject post(JAXBElement<CreateRequestObject> JAXBCreateRequestObject,
        @HeaderParam(value = "X") String x,
        @HeaderParam(value = "Y") String y) throws WebApplicationException

有没有类似的注释 @TypeHint 指定请求对象的类型?

有帮助吗?

解决方案

您应该能够将 @TypeHint 应用于参数,例如:

  public ResponseObject post(@TypeHint(...) JAXBElement<CreateRequestObject> JAXBCreateRequestObject,
     @HeaderParam(value = "X") String x,
     @HeaderParam(value = "Y") String y)
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top