这是事情: 我试图通过cxf与自定义验证事件处理程序建立架构验证。 我的配置如下所示:
<cxf:cxfEndpoint id="personEndpoint" address="/person"
serviceClass="org.apache.servicemix.samples.wsdl_first.Person"
wsdlURL="wsdl/person.wsdl">
<cxf:properties>
<entry key="schema-validation-enabled" value="true" />
<entry key="jaxb-validation-event-handler">
<bean class="org.dpytel.servicemix.camel.MyCustomHandler" />
</entry>
</cxf:properties>
</cxf:cxfEndpoint>
这很好用 - 检查架构验证,遇到错误时,“MyCustomHandler”会被执行。 我的问题是我想将导致验证错误的整个消息保存到文件中,但在“MyCustomHandler”中我没有这些信息可用(只有一些错误消息和位置)
是否有其他方法可以使用cxf验证架构并在出现问题时记录消息?
答案 0 :(得分:1)
您可以使用CXF Fault Interceptor访问消息内容,而验证异常将导致错误:
http://fusesource.com/docs/esb/4.4.1/cxf_interceptors/CXFInterceptorImplMessage.html