cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel Kulp (JIRA)" <>
Subject [jira] [Resolved] (CXF-5354) faultTo address is ignored when fault is thrown
Date Thu, 24 Oct 2013 18:16:14 GMT


Daniel Kulp resolved CXF-5354.

       Resolution: Fixed
    Fix Version/s: 2.6.11
         Assignee: Daniel Kulp

This should now be fixed.   Can you give it a try when you get a chance?

> faultTo address is ignored when fault is thrown
> -----------------------------------------------
>                 Key: CXF-5354
>                 URL:
>             Project: CXF
>          Issue Type: Bug
>          Components: WS-* Components
>    Affects Versions: 2.7.7
>            Reporter: Jesse Pangburn
>            Assignee: Daniel Kulp
>             Fix For: 2.7.8, 2.6.11
>         Attachments:
> I have a Provider based service and find that with WS-Addressing enabled, it doesn't
handle FaultTo addresses properly.  The case I found that caused this is when I turned on
Schema Validation and sent a request that doesn't match the schema, then it throws a fault
but instead sends the reply to the replyTo address.  I then tried using a bogus mustUnderstand
header to cause a fault to see if it was just related to the schema validation, but it has
the same problem.
> Here's a sample request message to cause this (using mustUnderstand header so you don't
have to setup schema validation to test):
> {code:xml}
> <?xml version="1.0"?>
> <soap:Envelope xmlns:soap="">
>   <soap:Header>
>     <Action xmlns="">anything</Action>
>     <MessageID xmlns="">urn:uuid:2eae8433-d42a-4749-b053-f5b5805fe8e9</MessageID>
>     <To xmlns="">http://localhost:9003/xdsregistryb</To>
>     <ReplyTo xmlns="">
>       <Address>http://localhost:9003/replyBack</Address>
>     </ReplyTo>
>     <FaultTo xmlns="">
>       <Address>http://localhost:9003/faultBack</Address>
>     </FaultTo>
>     <bogus soap:mustUnderstand="true">this junk will fault</bogus>
>   </soap:Header>
>   <soap:Body>
>     <junk/>
>   </soap:Body>
> </soap:Envelope>
> {code}
> Note the ReplyTo is http://localhost:9003/replyBack and the FaultTo is http://localhost:9003/faultBack.
 When I send to my Provider service, the log file shows the response going to the replyBack
url, but the To address in WS-Addressing header shows the faultBack url- so it's halfway right!
 This is the case with both schema validation faults and the above example of bogus mustUnderstand
> Here's the Wireshark network trace (so there is no possibility of bad logging being the
> {quote}
> POST /replyBack HTTP/1.1
> Content-Type: application/soap+xml; charset=UTF-8
> Accept: */*
> User-Agent: Apache CXF 2.7.7
> Cache-Control: no-cache
> Pragma: no-cache
> Host: localhost:9003
> Connection: keep-alive
> Content-Length: 706
> <soap:Envelope xmlns:soap=""><soap:Header><Action
xmlns=""/><MessageID xmlns="">urn:uuid:6a5190fc-256f-428c-9e5e-8b79520bbf0c</MessageID><To
xml:lang="en">MustUnderstand headers: [bogus] are not understood.</soap:Text></soap:Reason></soap:Fault></soap:Body></soap:Envelope>
> {quote}
> Sorry, wiki markup is making bogus in red, not intentional.  See how the address listed
at the top doesn't match the WS-Addressing To address?  With anonymous replyTo address then
you get the fault back on the same synchronous request channel, and it still shows the /faultBack
url in the To address.

This message was sent by Atlassian JIRA

View raw message