axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "S.Uthaiyashankar (JIRA)" <j...@apache.org>
Subject [jira] Created: (AXIS2C-1402) AXIS2_PARAM_CHECK overwrite previously set error status
Date Thu, 15 Oct 2009 05:24:31 GMT
AXIS2_PARAM_CHECK overwrite previously set error status
-------------------------------------------------------

                 Key: AXIS2C-1402
                 URL: https://issues.apache.org/jira/browse/AXIS2C-1402
             Project: Axis2-C
          Issue Type: Bug
    Affects Versions: 1.6.0
            Reporter: S.Uthaiyashankar
            Assignee: S.Uthaiyashankar
             Fix For: Next Version


When checking AXIS2_PARAM_CHECK, if it is success, it overwrites STATUS_CODE by setting AXIS2_ERROR_SET_STATUS_CODE(error,
AXIS2_SUCCESS); 

check the macro definition:
#define AXIS2_PARAM_CHECK(error, object, error_return)                  \
    if (!object)                                                        \
    {                                                                   \
        AXIS2_ERROR_SET_ERROR_NUMBER(error, AXIS2_ERROR_INVALID_NULL_PARAM); \
        AXIS2_ERROR_SET_STATUS_CODE(error, AXIS2_FAILURE);              \
        return error_return;                                            \
    }                                                                   \
    else                                                                \
    {                                                                   \
        AXIS2_ERROR_SET_STATUS_CODE(error, AXIS2_SUCCESS);              \
    }


Ideally, if PARAM_CHECK is success, it should not touch error status code. 

This macro is a problem when sending soap faults from generated code. To send faults from
generated code, we have to set the error status inside service logic and it will be checked
by the engine to create soap fault. However, after setting error status, there are several
generated codes doing AXIS2_PARAM_CHECK and hence overwriting the status code. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message