cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aki Yoshida (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CXF-4191) RM broken in synchronous Mode
Date Mon, 16 Apr 2012 13:56:18 GMT

    [ https://issues.apache.org/jira/browse/CXF-4191?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13254697#comment-13254697
] 

Aki Yoshida commented on CXF-4191:
----------------------------------

I looked into this issue. As I mentioned in my reply mail to Ben on users@cxfOne, it is not
so straightforward.

One approach that I tried is is to switch the operation for the partial response part. The
original operation is the oneway SequenceAcknowledgement operation acknowledging the last
response message for that sequence. To use the standard outbound chain to serialize the soap
body, we need to have the appropriate operation. So, we can replace this oneway SeqAck operation
with the out-going TerminateSequence operation and also clear the partial response flag. That
will let the outbound chain serialize the TerminateSequence element.

I think this is a simpler approach than filling the soap body of the partial response message
explicitly at the RM interceptor.

Let me know if someone has a better alternative.

thanks.
                
> RM broken in synchronous Mode
> -----------------------------
>
>                 Key: CXF-4191
>                 URL: https://issues.apache.org/jira/browse/CXF-4191
>             Project: CXF
>          Issue Type: Bug
>          Components: WS-* Components
>    Affects Versions: 2.4.6
>         Environment: CXF 2.4.6, Jdk5 (Jrockit), spring 2.5, maven2, eclipse 3.7, Win
xp
>            Reporter: Ben Pezzei
>            Assignee: Aki Yoshida
>            Priority: Critical
>              Labels: Ws-RM, rm
>
> RM-Setup without a decoupled endpoint (therefore: synchronous modus)
> Client is configured with:
> includeOffer=true,
> SequenceTerminationPolicyType.maxLength=1
> AcknowledgementInterval=0
> Server accepts Offers, wsrm-policy:AcknowledgementInterval=0
> pseudo-Log:
> Req 1: createSequence with offer 123 and acksTo:http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous
> Res 1: CreateSequenceResponse with seqid 456
> Req 2: Sequence with Id 456 & lastMessage-flag & actual content
> Res 2: Sequence with Id 123 & lastMessage-flag & SequenceAcknowledgement for
Id 456 & actual content
> Req 3: TerminateSequence for Id 456
> Res 3: standard rm header
> Req 4: SequenceAck for 123
> Req 5: standard rm header
> Res 5: standard rm header
> Req 6 from Server: terminateSequence for 123 to w3c.org
> There is another "feature": When the server PortImpl throws an Exception, Request/Response
goes as follows:
> Req 1: createSequence with offer 123 and acksTo:http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous
> Res 1: CreateSequenceResponse with seqid 456
> Req 2: Sequence with Id 456 & lastMessage-flag & actual content
> Res 2: Sequence with 456 & lastMessage, Action: NullpointerException, soap:body contains
FaulCode & faultstring
> After receiving the response, client throws UnknownSequence: The value of wsrm:Identifier
is not a known Sequence identifier.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message