如何在没有 soapaction header 验证的情况下在骆驼中创建 cxf 端点?

How to create cxf endpoint in camel without soapaction header validation?

我正在尝试使用 camel 和 cxf 组件创建服务总线。 Cxf 端点应接收任何 soap 请求。

我有以下片段:

context.addRoutes(new RouteBuilder() {
  override def configure(): Unit = {
    from("cxf://http://localhost:7778?dataFormat=PAYLOAD&properties.mtom-enabled=true")
      .process(new Processor {
        override def process(exchange: Exchange): Unit = {
          // do something here
        }
      })
  }
})
context.start

但是在请求期间我收到以下错误:

org.apache.cxf.interceptor.Fault: 给定的 SOAPAction queryINNFL 与操作不匹配

我该怎么做才能使我的端点接收所有类型的肥皂操作 headers?

您可以尝试实现 CXF 拦截器并将其连接到拦截器入站链到端点中的适当位置。描述了各个阶段和示例 there。然后,您的拦截器实现可以模仿所需的 SoapAction 值,以匹配 wsdl.