我正在使用RestEasy挂钩到api。我指定我想要JSON,但我继续获取XML ...这是我定义端点的地方
@Path("/page.asmx")
@Produces("application/json")
public interface ApiProxy {
@POST
@Path("/doc_Get")
@Consumes("application/json")
ClientResponse<DocOutput> getDocOutput(@Form DocInput docInput);
}
当我的服务联系以解组响应时,我收到以下错误:
javax.xml.bind.UnmarshalException: unexpected element (uri:"https://something.com/", local:"ServiceBaseOfDoc"). Expected elements ...
我也正在注册一个具有重复性的JacksonJsonProvider。好像标题Content-Type:application / json没有被传递......
如果我用curl尝试这个相同的请求并使用头文件内容类型:application / json我得到了json ...为什么我会得到XML?
答案 0 :(得分:0)
我在我的方法中添加了一个@HeaderParam,并且能够强制使用正确的内容类型。
ClientResponse<DocOutput> getDocOutput(@HeaderParam("Content-Type") MediaType contentType, @Form DocInput docInput);