[prev in list] [next in list] [prev in thread] [next in thread] 

List:       xmlrpc-user
Subject:    [jira] [Updated] (AXIOM-114) Soap envelope rpc-encoded namespace
From:       "Andreas Veithen (JIRA)" <jira () apache ! org>
Date:       2011-06-23 21:20:47
Message-ID: 1036908234.34603.1308864047991.JavaMail.tomcat () hel ! zones ! apache ! org
[Download RAW message or body]


     [ https://issues.apache.org/jira/browse/AXIOM-114?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel \
]

Andreas Veithen updated AXIOM-114:
----------------------------------

    Fix Version/s:     (was: 1.2.12)
                   1.2.13

> Soap envelope rpc-encoded namespace issue 
> ------------------------------------------
> 
> Key: AXIOM-114
> URL: https://issues.apache.org/jira/browse/AXIOM-114
> Project: Axiom
> Issue Type: Bug
> Affects Versions: 1.2.8
> Environment: java 1.6
> Reporter: Luca Cavanna
> Fix For: 1.2.13
> 
> Attachments: AxiomSoapRpcEncoded.java, AxiomSoapRpcEncodedOMSource.java, \
> soaprequest.xml 
> 
> I have replaced saaj with axiom in my projects to manage soap handling.
> I have an rpc-encoded soap envelope containing the declarations of soapenv \
> (xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/") and xsi \
> (xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance") namespaces.  The first \
> element of the soap body references soapenv in one of his attributes \
> (soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"). Some xml \
> elements in the soap body reference the xsi namespace (xsi:type="soapenc:string") \
> as well. When I try to parse the soap body (extracted from the soap envelope) using \
> JDOM or DOM4J I get a SaxParseException because the soapenv and xsi namespaces are \
>                 not bound:
> org.xml.sax.SAXParseException: The prefix "soapenv" for attribute \
> "soapenv:encodingStyle" associated with an element type "ns1:sendMessage" is not \
> bound. Saaj handles correctly the soapenv and and xsi declarations moving them in \
> the soap body; with axiom the soap body contain only the reference to those \
> namespaces and not the declarations. The issue seems to be creating a StAXSource \
> from Axiom payload element (obtained by calling \
> axiomSoapMessage.getSOAPEnvelope().getBody().getFirstElement()); serializing \
> payload calling serialize method namespace are correctly handled, but creating a \
> StAXSource using XMLStreamReader and transforming it to a StreamResult I get an xml \
> not parseable because namespaces are not bound. I have found a workaround \
> transforming the StAXSource in a JDOMResult. The problem rises when you create a \
> StAXSource from an Axiom payload element (calling \
> axiomSoapMessage.getSOAPEnvelope().getBody().getFirstElement()). When you call the \
> serialize method, namespaces are correctly handled; but if you create a StAXSource \
> using an XMLStreamReader and try to transform it to a StreamResult you get the \
> SaxParseException mentioned above. I have found a workaround transforming the \
> StAXSource in a JDOMResult.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic