Rob,

I think the correct syntax for the faultsTarget is:

<eip:pipeline service="wkpb:pipeline2" endpoint="endpoint">
<eip:transformer> <eip:exchange-target service="wkpb:WkpbVerwerkKennisgeving"/>
   </eip:transformer>
   <eip:target>
       <eip:exchange-target service="wkpb:Dump"/>
   </eip:target>
   <eip:faultsTarget>
        <eip:exchange-target service="wkpb:akrpoller"/>
   </eip:faultsTarget>
</eip:pipeline>

Could you retry it with this configuration? If it doesn't work, try settings the logging level to DEBUG (in conf/log4j.xml). This should give you a complete trace of all exchanges that are being handled by the ESB. Also, it's a bit strange that you are sending the faults to a poller service endpoint. Are you sure your BC can handle this type of incoming messages?


Gert

Rob de Jong wrote:
Hello,

First off, I do hope this won't turn out to be a double post. I tried to
send this yesterday, but it's not come through since. If it does
eventually, my apologies.

I'm having a bit of trouble getting the Robust-In-Only fault routing set
up. The deployment is set up where a custom Java component initiate an
exchange, which is sent to some pipelines and through some transformers.
Eventually, it's routed through an HTTP component. In the case of a
fault, the component sends the fault back to the last pipeline in line.
It's intended that the Fault is caught by the custom component.

This is now how it's working, however. I've tried setting a faultTarget
element in the Target of the pipeline that gets the fault first, routing
it back directly to my custom component. I'll add a snippet of the log
later on. It seems the fault hovers between the http component and the
pipeline, but is never sent to the custom component.

If I do not use faultTarget, things do not seem to work either. The
deployment uses the following components:

Custom Java BC (akrpoller)
    EIP Pipeline1
        LW XSLT
            EIP recipient list
                EIP Pipeline2
                    HTTP component
                        Logger component
            Debugging Logger component


The EIP Pipeline2 is set up as follows:
    <eip:pipeline service="wkpb:pipeline2" endpoint="endpoint">
<eip:transformer> <eip:exchange-target service="wkpb:WkpbVerwerkKennisgeving"
/>
        </eip:transformer>
        <eip:target>
            <eip:exchange-target service="wkpb:Dump"/>
            <eip:faultTarget service="wkpb:akrpoller"/>
        </eip:target>
</eip:pipeline>
And the HTTP Component's set up as follows:
    <http:endpoint service="wkpb:WkpbVerwerkKennisgeving"
endpoint="WkpbVerwerkKennisgeving" role="provider" locationURI="http://localhost:8085/obterra/services/WkpbVerwerkKennisgev ing" soap="yes" soapVersion="1.1" soapAction="http://www.egem.nl/StUF";

            wsdlResource="classpath:wkpb0102.wsdl"

    />


I'm flat out of ideas at the moment. Any help would be greatly
appreciated.

Rob de Jong



Reply via email to