You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Jarek Gawor (JIRA)" <ax...@ws.apache.org> on 2006/05/13 07:07:10 UTC

[jira] Resolved: (AXIS-2394) SOAPFaultBuilder throws DOMException WRONG_DOCUMENT_ERR

     [ http://issues.apache.org/jira/browse/AXIS-2394?page=all ]
     
Jarek Gawor resolved AXIS-2394:
-------------------------------

    Resolution: Fixed

Patch committed.

> SOAPFaultBuilder throws DOMException WRONG_DOCUMENT_ERR
> -------------------------------------------------------
>
>          Key: AXIS-2394
>          URL: http://issues.apache.org/jira/browse/AXIS-2394
>      Project: Apache Axis
>         Type: Bug

>     Versions: 1.3
>  Environment: Windows XP Professional, Java 5
>     Reporter: Nikolaos Georgiou

>
> I had a problem dealing with fault responses and I got it fixed.
> The problem was in SOAPFaultBuilder.java
> the message node was added to a new DOM Document but it was NOT imported first!
> Importing the node first into the new DOM Document solved the problem.
> The diff -u output is:
> --- ws-axis-java-original/src/org/apache/axis/message/SOAPFaultBuilder.java    2005-07-27 06:44:02.000000000 +0300
> +++ ws-axis-java-patched/src/org/apache/axis/message/SOAPFaultBuilder.java    2006-01-31 17:56:27.640439500 +0200
> @@ -24,6 +24,7 @@
> import org.apache.axis.soap.SOAPConstants;
> import org.apache.axis.utils.Messages;
> import org.apache.axis.utils.XMLUtils;
> +import org.w3c.dom.Document;
> import org.w3c.dom.Element;
> import org.w3c.dom.Node;
> import org.xml.sax.Attributes;
> @@ -301,8 +302,9 @@
>                         if (node instanceof MessageElement) {
>                             elements[i] = ((MessageElement) node).getAsDOM();
>                         } else if(node instanceof Text){
> -                            elements[i] = XMLUtils.newDocument().createElement("text");
> -                            elements[i].appendChild(node);
> +                Document tempDoc = XMLUtils.newDocument();
> +                            elements[i] = tempDoc.createElement("text");
> +                            elements[i].appendChild(tempDoc.importNode(node,true));
>                         }
>                     } catch (Exception e) {
>                         throw new SAXException(e);

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira