axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Brian Reinhold (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (AXIS2-5431) No Header in response
Date Wed, 03 Oct 2012 11:18:07 GMT

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

Brian Reinhold commented on AXIS2-5431:
---------------------------------------

I have done some further work on this problem but I do not know if it is correct. In the In-handler
(in the addressing module) I check for the mustUnderstand attribute and if it is found and
true (or 1) I set the property to indicate that it has the mustUnderstand. In the creation
of the outbound message in the MessageContextBuilder I add this line of code 
        newmsgCtx.setProperty(AddressingConstants.ADD_MUST_UNDERSTAND_TO_ADDRESSING_HEADERS,
                inMessageContext.getProperty(
                        AddressingConstants.ADD_MUST_UNDERSTAND_TO_ADDRESSING_HEADERS));
These two changes create the missing attribute in the addressing headers. (I am not saying
this is correct for the Axis2 model because I do not understand its scope very well at this
time; however I want to see if that would solve the client side error.) However, in spite
of the presence of the attributes, the error STILL comes up. The reason turns out NOT to be
on the addressing headers but in the security header. Though the security header HAS the mustUnderstand
attribute, it apparently has NOT been 'registered' with JAXWS. I am not sure what that means
but I can venture a guess.

But that is not the only issue I see. On the client side there is an interesting check which
is performed FIRST as it parses through the header elements:

            if (headerBlock.isProcessed() || !headerBlock.getMustUnderstand()) {
                continue;
            }
in the checkMustUnderstand() method of the Axis2Engine.  If the response has NO mustUnderstand
attribute at all, no further checking is done. As I understand it that is wrong. Since the
client SET the mustUnderstand attribute to 'true', the response has to indicate that it was
'understood'. It does that by adding the mustUnderstand attribute and setting to true.

So I can avoid the must understand attribute error on the client side by doing one of two
things:
1. Do not include the security header in the response (which is a server error since the 'timestamp'
security check is sent in the service request)
2. Do not include the mustUnderstand attribute in the response (which is a server error since
the mustUnderstand attribute is set in the service request)

                
> No Header in response
> ---------------------
>
>                 Key: AXIS2-5431
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5431
>             Project: Axis2
>          Issue Type: Bug
>          Components: kernel
>    Affects Versions: 1.6.2
>            Reporter: Martin Gainty
>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org


Mime
View raw message