为什么自定义代理超时而不是去故障序列?

Why custom proxy timeouts instead of going to fault sequence?

我正在尝试创建一个自定义代理,它会在请求负载非法时以 SoapFault 响应xml,但无论我尝试什么,都不会调用 faultSequence。

使用 PassThroughProxy 时不会出现此问题,只会出现 CustomProxy。

有人遇到过这个问题吗?

下面是我的示例自定义代理:

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse" name="FileService" transports="http https" startOnLoad="true" trace="disable">
    <target>
        <inSequence>
            <property name="file.md5.path" expression="//*[local-name() = 'filePath']" scope="default" type="STRING"/>
            <class name="testowe.mediators.file.md5"/>
            <payloadFactory media-type="xml">
                <format>
                    <exam:OutputType xmlns:exam="http://example.com/">
                        <exam:result></exam:result>
                    </exam:OutputType>
                </format>
                <args>
                    <arg evaluator="xml" expression="$ctx:file.md5.result"/>
                </args>
            </payloadFactory>
            <respond/>
        </inSequence>
        <outSequence/>
        <faultSequence>
            <log level="full" description="Blad w faulcie"/>
            <makefault version="soap11">
                <code xmlns:soap11Env="http://schemas.xmlsoap.org/soap/envelope/" value="soap11Env:Client"/>
                <reason expression="$ctx:ERROR_MESSAGE"/>
                <role/>
            </makefault>
            <send/>
        </faultSequence>
    </target>
    <publishWSDL key="conf:testowe/schemas/FileService.wsdl">
        <resource location="FileService.Messages.xsd" key="conf:testowe/schemas/FileService.Messages.xsd"/>
    </publishWSDL>
</proxy>

WSO2-ESB 4.8.1 PPT(直通传输)存在问题,ESB 在格式错误的情况下没有响应 xml。同样已在 4.9.0 ESBJAVA-3284

中修复