我是Camel的新手,我正在使用uri:validator来验证针对.XSD文件的XML。但是,我不确定我是否正确地指向.xsd文件,因为我的gradle构建失败并出现以下错误:
引起:java.io.FileNotFoundException:mydirectory \ anotherDirectory \ myxsdFile-v1.0.xsd(系统找不到指定的路径)
在我的common-routes.xml文件中,我有以下内容:
<route>
<from uri="direct:util-xmltojson"/>
<log loggingLevel="INFO" message="XML Validation"/>
<doTry>
<to uri="validator:file:mydirectory\anotherDirectory\myxsdFile-v1.0.xsd"/>
<doCatch>
<exception>org.apache.camel.ValidationException</exception>
</doCatch>
</doTry>
</route>
这是使用验证器组件的正确方法吗?
感谢您的帮助,
予。
答案 0 :(得分:1)
validator
组件将uri用于验证的xsd文件的位置。
这可以是:
validator:file:_path_
的文件。此路径相对于应用程序执行的文件夹com/test/package/resource.xsd
:架构将在jar中查看com/test/package
validator:http://remotehost/path
的远程资源:camel将下载资源以验证xml 在你的例子中,camel正在寻找它找不到的文件mydirectory\anotherDirectory\myxsdFile-v1.0.xsd
。检查此文件是否存在,相对于应用程序的执行文件夹。如果此资源是静态的,则应将其放在jar中,并使用类路径查找。