我有某种奇怪的问题。
我们有一个WSDL,并从中生成了JAXB代码。该服务的第一个部署是使用Spring XML配置,我们将端点配置为
<jaxws:endpoint id="paymentProcess"
implementor="com.path.implementation.class"
address="/paymentProcess"/>
在不知不觉中,客户端系统向Web-Method请求之一添加了一个属性(XML元素),但此代码中没有任何事情发生。它忽略了额外的属性。
,但是现在我使用javaconfig更改了代码
@Bean("cxf")
public SpringBus springBus() {
System.setProperty("org.apache.cxf.logging.enabled", "pretty");
return new SpringBus();
}
@Bean
public Endpoint paymentServiceEndpoint(InstallmentServicesImpl installmentServices) {
EndpointImpl endpoint = new EndpointImpl(springBus(), installmentServices);
endpoint.publish("/paymentProcess");
return endpoint;
}
在此更改之后,我们遇到了许多问题,经过很多努力,我们发现客户发送了一个不在初始WSDL中的额外属性(XML元素),并且由于这些不明显的错误发生了。p>有什么方法,所以我可以让CXF忽略这些额外的元素?
问题是我的JDK和CXFVersions,目标系统被部署在JDK 6上,这使我将CXF降低到3.0版。一切都很好。