[
https://issues.apache.org/jira/browse/AXIS2-3050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12517145
]
sumedha rubasinghe commented on AXIS2-3050:
-------------------------------------------
Hi,
I tried to regenerate the scenario using following code and I did not get any
error. Could you please check what I have done & get back if you have it
differently?
Thanks,
sumedha
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
import java.io.ByteArrayInputStream;
import java.io.IOException;
import javax.xml.soap.MessageFactory;
import javax.xml.soap.SOAPBody;
import javax.xml.soap.SOAPException;
import javax.xml.soap.SOAPMessage;
import org.w3c.dom.Node;
public class Axis3050 {
public static void main(String[] args) {
String s = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" +
"<soapenv:Envelope
xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\">" +
"<soapenv:Body>" +
"<get_registryInfo generic=\"1.0\"
xmlns=\"urn:juddi-org:api_v2\"/>" +
"</soapenv:Body>" +
"</soapenv:Envelope>";
MessageFactory msgFactory;
try {
msgFactory = MessageFactory.newInstance();
SOAPMessage soapReq = msgFactory.createMessage(null,new
ByteArrayInputStream(s.getBytes()));
SOAPBody soapReqBody = soapReq.getSOAPBody();
Node n = soapReqBody.getFirstChild();
System.out.println(n.getAttributes().getLength());
} catch (SOAPException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
> Reading indented XML using SAAJ (which uses AXIOM) treats line breaks and
> spaces as text nodes
> ----------------------------------------------------------------------------------------------
>
> Key: AXIS2-3050
> URL: https://issues.apache.org/jira/browse/AXIS2-3050
> Project: Axis 2.0 (Axis2)
> Issue Type: Bug
> Components: om
> Affects Versions: 1.3
> Environment: All
> Reporter: Jeff Faath
> Assignee: sumedha rubasinghe
> Priority: Minor
>
> I am trying to read this XML snippet:
> <?xml version="1.0" encoding="utf-8"?>
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
> <soapenv:Body>
> <get_registryInfo generic="1.0" xmlns="urn:juddi-org:api_v2"/>
> </soapenv:Body>
> </soapenv:Envelope>
> Using this code to read in and process:
> String s = <the xml snippet>
> MessageFactory msgFactory = MessageFactory.newInstance();
> SOAPMessage soapReq = msgFactory.createMessage(null,new
> ByteArrayInputStream(s.getBytes()));
> SOAPBody soapReqBody = soapReq.getSOAPBody();
> Then, on this line:
> Node n = soapReqBody.getFirstChild();
> The node returned on this call is a Text node with a value of "\n " (line
> break with spaces). In other words, the code handles the indenting up until
> the SOAPBody element is isolated. Then calling the getFirstChild() method
> returns the indenting as a Text node. Stepping into the code reveals that
> the getFirstChild() method comes from SAAJ's SOAPElementImpl. This in turn
> calls getFirstChild() from it's element member variable which is of type
> SOAP11BodyImpl from AXIOM. It is this call that is returning the indentation.
> Not sure if this is a bug or if AXIOM doesn't allow indented XML.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]