【问题标题】:Apache CXF: Consume XML POST payload with "application/x-www-form-urlencoded" content type setApache CXF:使用带有“application/x-www-form-urlencoded”内容类型集的 XML POST 有效负载
【发布时间】:2011-11-04 14:17:30
【问题描述】:

我们在 Apache CXF 中实现了一个 REST 服务,可供我们的客户端使用,如下所示:

@POST
@Consumes(MediaType.APPLICATION_XML)
@Produces(MediaType.TEXT_PLAIN)
@Path("/process")
public Response processBean(Bean bean);

Bean 对象带有 @XmlRootElement 注释,这一切都很好。问题是客户端没有设置正确的内容类型(应该是“application/xml”但客户端设置了“application/x-form-urlencoded”)。

由于内容类型错误,Apache CXF 没有将该方法重新识别为(不正确的)调用的有效方法。如果我将@Consumes 更改为“/ 或 application/x-www-form-urlencode”,Apache CXF 不知道如何解析 POST 有效负载(没有 MessageBodyReader)。 客户端最终会更改标题,但我们现在需要快速修复。

有什么想法吗?我需要使用一些 XmlMessageBodyReader 吗?

【问题讨论】:

    标签: rest cxf


    【解决方案1】:

    我建议使用filter 将内容类型修改为您的代码所期望的值。

    【讨论】:

      猜你喜欢
      • 2021-02-03
      • 2020-04-21
      • 1970-01-01
      • 2019-09-12
      • 1970-01-01
      • 2017-08-26
      • 1970-01-01
      • 2019-11-13
      相关资源
      最近更新 更多