axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Siyana Slavova (JIRA)" <j...@apache.org>
Subject [jira] [Created] (AXIS2-5939) Axis2 not parsing correctly query parameters after upgrading xml schema
Date Tue, 13 Nov 2018 12:17:00 GMT
Siyana Slavova created AXIS2-5939:
-------------------------------------

             Summary: Axis2 not parsing correctly query parameters after upgrading xml schema
                 Key: AXIS2-5939
                 URL: https://issues.apache.org/jira/browse/AXIS2-5939
             Project: Axis2
          Issue Type: Bug
            Reporter: Siyana Slavova


*Steps to reproduce:*
 # Deploy sample Echo.aar in axis 2.
 # Call [http://localhost:8080/axis2/services/MyService/echoOMElement?in=in]
 # Check the response.

*Expected behaviour:*
 The response should be 200 ok and the om element should be properly echoed.

*Actual behaviour:*
 The response is 500. Internally null pointer is thrown because the OMElement parameter in
echoOMElement is null. The cause is that it is not correctly parsed in BuilderUtil.buildsoapMessage
method. The parameter requests are not added in the soap envelope.

On previous version of axis (before changing the schema) the qName of the particle element
was null (on row 145), but after upgrading it is not and the program does not enter the if
method, so the parameters are not added. See the code snippet
{code:java}
XmlSchemaParticle particle = complexType.getParticle();
if (particle instanceof XmlSchemaSequence || particle instanceof XmlSchemaAll) {

    if (particle instanceof XmlSchemaSequence) {
        XmlSchemaSequence sequence = (XmlSchemaSequence) particle;
        // now we need to know some information from the binding operation.

        for (XmlSchemaSequenceMember sequenceMember : sequence.getItems()) {

            XmlSchemaElement innerElement = (XmlSchemaElement) sequenceMember;
            QName qName = innerElement.getWireName();
            // ignoring the elements without proper type and minoccurs zero
            if ((innerElement.getSchemaTypeName() == null) &&
                (innerElement.getMinOccurs() == 0)) {
                continue;
            }
            if (qName == null && innerElement.getSchemaTypeName()
                    .equals(org.apache.ws.commons.schema.constants.Constants.XSD_ANYTYPE))
{
                createSOAPMessageWithoutSchema(soapFactory, bodyFirstChild,
                                               requestParameterMap);
                break;
            }
            checkMinOccurs(innerElement, qName, soapFactory, requestParameterMap,
                           bodyFirstChild);
        }
{code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
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