Author: veithen
Date: Sun Feb 15 23:41:42 2009
New Revision: 744780
URL: http://svn.apache.org/viewvc?rev=744780&view=rev
Log:
Correctly set the xmlVersion and standalone properties on the OMDocument when
the StAXOMBuilder is created (in StAXOMBuilder#next it is too late for that).
Modified:
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/StAXOMBuilder.java
Modified:
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/StAXOMBuilder.java
URL:
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/StAXOMBuilder.java?rev=744780&r1=744779&r2=744780&view=diff
==============================================================================
---
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/StAXOMBuilder.java
(original)
+++
webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/StAXOMBuilder.java
Sun Feb 15 23:41:42 2009
@@ -21,6 +21,7 @@
import org.apache.axiom.om.OMAbstractFactory;
import org.apache.axiom.om.OMContainer;
+import org.apache.axiom.om.OMDocument;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
@@ -69,10 +70,7 @@
*/
public StAXOMBuilder(OMFactory ombuilderFactory, XMLStreamReader parser) {
super(ombuilderFactory, parser);
- document = ombuilderFactory.createOMDocument(this);
- if (charEncoding != null) {
- document.setCharsetEncoding(charEncoding);
- }
+ document = createDocument();
}
/**
@@ -92,10 +90,7 @@
doTrace = log.isDebugEnabled();
namespaceURIInterning = false;
lookAheadToken = -1;
- document = factory.createOMDocument(this);
- if (charEncoding != null) {
- document.setCharsetEncoding(charEncoding);
- }
+ document = createDocument();
lastNode = element;
document.setOMDocumentElement(element);
populateOMElement(element);
@@ -132,10 +127,7 @@
namespaceURIInterning = false;
lookAheadToken = -1;
omfactory = OMAbstractFactory.getOMFactory();
- document = omfactory.createOMDocument(this);
- if (charEncoding != null) {
- document.setCharsetEncoding(charEncoding);
- }
+ document = createDocument();
}
/**
@@ -156,6 +148,16 @@
lookAheadToken = -1;
}
+ private OMDocument createDocument() {
+ OMDocument document = omfactory.createOMDocument(this);
+ if (charEncoding != null) {
+ document.setCharsetEncoding(charEncoding);
+ }
+ document.setXMLVersion(parser.getVersion());
+ document.setStandalone(parser.isStandalone() ? "yes" : "no");
+ return document;
+ }
+
/**
* Method next.
*
@@ -206,13 +208,6 @@
elementLevel++;
lastNode = createNextOMElement();
break;
- case XMLStreamConstants.START_DOCUMENT:
- // Document has already being created.
-
- document.setXMLVersion(parser.getVersion());
- document.setCharsetEncoding(parser.getEncoding());
- document.setStandalone(parser.isStandalone() ? "yes" :
"no");
- break;
case XMLStreamConstants.CHARACTERS:
lastNode = createOMText(XMLStreamConstants.CHARACTERS);
break;