Spring Integration 4.1 - XML验证异常

时间:2015-10-09 21:15:57

标签: xml spring-integration

我正在处理大量的XML架构,它们将Spring Integration上的消息序列化,但有时SI会触发异常,如下所述。

但问题是,在实践中,使用相同的例程创建了数千条消息并通过此集成路径。

有人知道Marshaller(JaxBMarshaller)在序列化消息后抛出此异常的原因。我的意思是,消息是成功生成的,然后在抛出异常后,就像XSD的问题一样,在xsd文件中出现了错误的字符代码"会引起这样的消息吗?我问,因为之前测试过这样的XML序列化,并且没有抛出任何异常。

这是SI(4.1.2)XML片段。

<int:publish-subscribe-channel id="jms0503"></int:publish-subscribe-channel>
    <int:chain input-channel="wsAceite0503ResponseChannel" - **WS Response.** 
        output-channel="jms0503">
        <int:transformer ref="saogSaoMsgSOL0503Transformer" 
            method="apply"></int:transformer>
        <int:header-enricher>
            <int:header name="protocoloSAOG"
                expression="XXXXX"></int:header>
        <int:header name="XXXXXX" value="XXXXXXX" />        
    </int:header-enricher>          
    <int:transformer id="saogMarsahllerTransformer" ref="saogMarshallingTransformer"></int:transformer>
    <int:object-to-string-transformer></int:object-to-string-transformer>

HEre是引发异常的地方。     

现在我怀疑是否在模式验证期间抛出了异常(我的猜测不是这种情况)。

<stream:stdout-channel-adapter channel="jms0503"></stream:stdout-channel-adapter>           
    <int:chain input-channel="jms0503">
        <jms:outbound-channel-adapter
            connection-factory="solicitacaoConnFactory" destination="XXXXXXX">
        </jms:outbound-channel-adapter>
    </int:chain>    
    <int-xml:validating-filter schema-type="xml-schema"
                input-channel="jms0503" throw-exception-on-rejection="true"
                schema-location="solicitacao/SaogSaoMsgSOL0303.xsd" output-channel="xmlValidationOutputChannel" /> 

Schema位置似乎是正确的,其他XML使用相同的集成流模式成功验证。

[2015-10-09 15:02:57]ERROR[task-scheduler-5](SaogIntegracaoLogErrorHandler.java:26) - Exception org.springframework.integration.MessageRejectedException: Message was rejected due to XML Validation errors; nested exception is org.springframework.integration.xml.AggregatedXmlMessageValidationException: Multiple causes:
            cvc-elt.1: Cannot find the declaration of element 'ns13:XXXXXX'.

0 个答案:

没有答案