2011-08-22 118 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