我正在开发一个 Spring Integration 项目并使用 Groovy 编写一个示例转换器。下面给出的是来自 Spring 配置文件的示例——
<int:transformer input-channel="channel8" output-channel="channel9">
<int-groovy:script>
<![CDATA[
if (!payload.equals('hello')) {
throw new RuntimeException('invalid payload')
}
payload
]]>
</int-groovy:script>
</int:transformer>
我已经导入了以下命名空间,并且 Eclipse 编辑器中的 xml Spring 配置文件也没有显示错误。
xmlns:int-groovy="http://www.springframework.org/schema/integration/groovy"
但是在运行我的程序时,我看到以下错误 -
Caused by: org.xml.sax.SAXParseException; lineNumber: 60; columnNumber: 24; cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'int-groovy:script'.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198)
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:134)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:437)
我不确定我在这里缺少什么。对此的任何帮助表示赞赏。