Apache camel 服务器端XSD验证错误的Apache CXF停止事务传播
我们有CXF SOAP over JMS服务,并使用schema validation enabled属性启用了XSD验证。使用此配置,对于所有类型的错误,都会发生事务回滚。我们希望停止XSD验证错误的回滚,并允许运行时错误的回滚 我们已经添加了OneException(ValidationException.class).handled(true),但是对于SOAP over JMS,当发生验证异常时,不会执行下面的代码,并在其自身之前调用回滚Apache camel 服务器端XSD验证错误的Apache CXF停止事务传播,apache-camel,cxf,Apache Camel,Cxf,我们有CXF SOAP over JMS服务,并使用schema validation enabled属性启用了XSD验证。使用此配置,对于所有类型的错误,都会发生事务回滚。我们希望停止XSD验证错误的回滚,并允许运行时错误的回滚 我们已经添加了OneException(ValidationException.class).handled(true),但是对于SOAP over JMS,当发生验证异常时,不会执行下面的代码,并在其自身之前调用回滚 在Apache CXF中是否有一种方法可以根据异
在Apache CXF中是否有一种方法可以根据异常类型控制回滚—而不是对异常的xml验证类型进行回滚?您的问题包含的信息很少 但是,正如您所写,您已经启用了CXF的
模式验证enabled
属性。因此,如果请求不是模式有效的,框架将停止它。请求未到达您的代码。我猜客户端从CXF接收到Soap错误
在CXF中,您可以自定义很多内容您甚至可以编写自己的JAXB验证程序,以替换或扩展CXF验证程序,并根据需要处理无效请求。有关简单示例,请参见。然后可以这样配置它
<jaxws:properties>
<entry key="schema-validation-enabled" value="true" />
<entry key="jaxb-validation-event-handler">
<bean class="com.your.package.MyCustomHandler"></bean>
</entry>
</jaxws:properties>
许多CXF定制也都是通过使用来完成的。但我不知道它是否也适用于验证
当然,您也可以在CXF中禁用模式验证并使用进行验证。但是,您必须注意不能转换为对象的无效请求 欢迎来到Stackoverflow!没有足够的细节,任何人都无法进一步帮助您。请看一看并完善你的问题。添加您现有的路由代码,说明您的camel版本,并根据需要粘贴任何堆栈跟踪。