2011-08-22 85 views
1

我正在使用Apache Camel处理POC,我必须通过CXF公开WS,进行一些验证和转换并调用另一个WS。 我试图使用验证,但似乎这只是与XML模式工作......Apache Camel使用DTD验证

<camelContext xmlns="http://camel.apache.org/schema/spring"> 
<route> 
    <from uri="cxf:bean:sdmoWSKweb" /> 
    <to uri="log:input"/> 
    <bean ref="CartWSExtractProcessor"/> 
    <doTry> 
     <to uri="validator:/dtd/configurator.dtd"/> 
     <to uri="mock:valid"/> 
     <doCatch> 
      <exception>org.apache.camel.ValidationException</exception> 
      <to uri="mock:invalid"/> 
     </doCatch> 
     <doFinally> 
      <to uri="mock:finally"/> 
     </doFinally> 
    </doTry> 
    <to uri="xslt:messageCopyItem.xslt"/> 
    <setHeader headerName="operationName"><constant>copyItemMaster</constant></setHeader> 
    <to uri="cxf:bean:qadCopyWeb?defaultOperationName=copyItemMaster"/> 
    <to uri="log:Output"/> 
</route> 

我试图生成和我DTD的XSD版本与W3.org工具,但结果无效。

有没有解决方法?

回答

1

Camel Validator只适用于XML/XSD或RelaxNG与Jing组件。

否则,你应该尝试其他DTD->XSD conversion tool或只是手动创建XSD版本...

+0

谢谢您的回答,我会尝试使用XSD或蒙山家庭经历一个过程做出验证,以解决我的问题。 – Franch