我有一个完全运行且经过测试的 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)
关于java - 明确表示不识别 JAXBElement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12676232/