You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by mi...@apache.org on 2016/04/19 22:32:07 UTC
olingo-odata2 git commit: [OLINGO-937] Improve XmlFactory
creation/caching
Repository: olingo-odata2
Updated Branches:
refs/heads/OLINGO-937_XmlFactoryImprovement [created] 1c81f7ba8
[OLINGO-937] Improve XmlFactory creation/caching
Project: http://git-wip-us.apache.org/repos/asf/olingo-odata2/repo
Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata2/commit/1c81f7ba
Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata2/tree/1c81f7ba
Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata2/diff/1c81f7ba
Branch: refs/heads/OLINGO-937_XmlFactoryImprovement
Commit: 1c81f7ba8b92ede9f4df7eadf148b3539ebfd9e5
Parents: 910d3bc
Author: Michael Bolz <mi...@sap.com>
Authored: Tue Apr 19 22:22:19 2016 +0200
Committer: Michael Bolz <mi...@sap.com>
Committed: Tue Apr 19 22:26:04 2016 +0200
----------------------------------------------------------------------
.../olingo/odata2/core/commons/XmlHelper.java | 26 +++++++++++++++++++-
.../olingo/odata2/core/debug/DebugInfoBody.java | 4 ++-
.../provider/EdmServiceMetadataImplProv.java | 3 ++-
.../odata2/core/ep/AtomEntityProvider.java | 15 +++++------
.../odata2/core/ep/BasicEntityProvider.java | 3 ++-
.../producer/AtomServiceDocumentProducer.java | 3 ++-
.../odata2/core/ep/LoadXMLFactoryTest.java | 6 ++---
.../olingo/odata2/core/ep/PerformanceTest.java | 3 ++-
.../core/ep/producer/TombstoneProducerTest.java | 3 ++-
.../ep/producer/XmlMetadataProducerTest.java | 3 ++-
10 files changed, 51 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/1c81f7ba/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/commons/XmlHelper.java
----------------------------------------------------------------------
diff --git a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/commons/XmlHelper.java b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/commons/XmlHelper.java
index 3433186..1d6e79f 100644
--- a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/commons/XmlHelper.java
+++ b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/commons/XmlHelper.java
@@ -21,8 +21,10 @@ package org.apache.olingo.odata2.core.commons;
import java.io.InputStream;
import javax.xml.stream.XMLInputFactory;
+import javax.xml.stream.XMLOutputFactory;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamReader;
+import javax.xml.transform.TransformerFactory;
import org.apache.olingo.odata2.api.ep.EntityProviderException;
@@ -31,6 +33,28 @@ public class XmlHelper {
/** Default used charset for reader */
private static final String DEFAULT_CHARSET = "UTF-8";
+
+ private static class XmlInputFactoryHolder {
+ private static final XMLInputFactory INSTANCE = XMLInputFactory.newInstance();
+ }
+
+ private static class XmlOutputFactoryHolder {
+ private static final XMLOutputFactory INSTANCE = XMLOutputFactory.newInstance();
+ }
+ private static class TransformerFactoryHolder {
+ private static final TransformerFactory INSTANCE = TransformerFactory.newInstance();
+ }
+
+ public static XMLInputFactory getXMLInputFactory() {
+ return XmlInputFactoryHolder.INSTANCE;
+ }
+ public static XMLOutputFactory getXMLOutputFactory() {
+ return XmlOutputFactoryHolder.INSTANCE;
+ }
+ public static TransformerFactory getTransformerFactory() {
+ return TransformerFactoryHolder.INSTANCE;
+ }
+
public static XMLStreamReader createStreamReader(final Object content) throws EntityProviderException {
if (content == null) {
throw new EntityProviderException(EntityProviderException.ILLEGAL_ARGUMENT
@@ -38,7 +62,7 @@ public class XmlHelper {
}
XMLStreamReader streamReader;
try {
- XMLInputFactory factory = XMLInputFactory.newInstance();
+ XMLInputFactory factory = getXMLInputFactory();
factory.setProperty(XMLInputFactory.IS_VALIDATING, false);
factory.setProperty(XMLInputFactory.IS_NAMESPACE_AWARE, true);
factory.setProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, false);
http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/1c81f7ba/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/debug/DebugInfoBody.java
----------------------------------------------------------------------
diff --git a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/debug/DebugInfoBody.java b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/debug/DebugInfoBody.java
index 4954c75..e2ea936 100644
--- a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/debug/DebugInfoBody.java
+++ b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/debug/DebugInfoBody.java
@@ -36,6 +36,7 @@ import org.apache.commons.codec.binary.Base64;
import org.apache.olingo.odata2.api.commons.HttpContentType;
import org.apache.olingo.odata2.api.ep.EntityProviderException;
import org.apache.olingo.odata2.api.processor.ODataResponse;
+import org.apache.olingo.odata2.core.commons.XmlHelper;
import org.apache.olingo.odata2.core.ep.BasicEntityProvider;
import org.apache.olingo.odata2.core.ep.util.JsonStreamWriter;
@@ -117,7 +118,8 @@ public class DebugInfoBody implements DebugInfo {
private String formatXml(final String xml) throws IOException {
try {
- Transformer transformer = TransformerFactory.newInstance().newTransformer();
+ final TransformerFactory transformerFactory = XmlHelper.getTransformerFactory();
+ Transformer transformer = transformerFactory.newTransformer();
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");
StreamResult outputTarget = new StreamResult(new StringWriter());
http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/1c81f7ba/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/edm/provider/EdmServiceMetadataImplProv.java
----------------------------------------------------------------------
diff --git a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/edm/provider/EdmServiceMetadataImplProv.java b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/edm/provider/EdmServiceMetadataImplProv.java
index e7853eb..3b2558a 100644
--- a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/edm/provider/EdmServiceMetadataImplProv.java
+++ b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/edm/provider/EdmServiceMetadataImplProv.java
@@ -42,6 +42,7 @@ import org.apache.olingo.odata2.api.edm.provider.Property;
import org.apache.olingo.odata2.api.edm.provider.Schema;
import org.apache.olingo.odata2.api.ep.EntityProviderException;
import org.apache.olingo.odata2.api.exception.ODataException;
+import org.apache.olingo.odata2.core.commons.XmlHelper;
import org.apache.olingo.odata2.core.ep.producer.XmlMetadataProducer;
import org.apache.olingo.odata2.core.ep.util.CircleStreamBuffer;
@@ -72,7 +73,7 @@ public class EdmServiceMetadataImplProv implements EdmServiceMetadata {
try {
writer = new OutputStreamWriter(csb.getOutputStream(), "UTF-8");
- XMLStreamWriter xmlStreamWriter = XMLOutputFactory.newInstance().createXMLStreamWriter(writer);
+ XMLStreamWriter xmlStreamWriter = XmlHelper.getXMLOutputFactory().createXMLStreamWriter(writer);
XmlMetadataProducer.writeMetadata(metadata, xmlStreamWriter, null);
return csb.getInputStream();
} catch (XMLStreamException e) {
http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/1c81f7ba/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/AtomEntityProvider.java
----------------------------------------------------------------------
diff --git a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/AtomEntityProvider.java b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/AtomEntityProvider.java
index acdf998..0977bec 100644
--- a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/AtomEntityProvider.java
+++ b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/AtomEntityProvider.java
@@ -52,6 +52,7 @@ import org.apache.olingo.odata2.api.processor.ODataResponse.ODataResponseBuilder
import org.apache.olingo.odata2.api.servicedocument.ServiceDocument;
import org.apache.olingo.odata2.core.commons.ContentType;
import org.apache.olingo.odata2.core.commons.ContentType.ODataFormat;
+import org.apache.olingo.odata2.core.commons.XmlHelper;
import org.apache.olingo.odata2.core.ep.aggregator.EntityInfoAggregator;
import org.apache.olingo.odata2.core.ep.aggregator.EntityPropertyInfo;
import org.apache.olingo.odata2.core.ep.consumer.AtomServiceDocumentConsumer;
@@ -107,7 +108,7 @@ public class AtomEntityProvider implements ContentTypeBasedEntityProvider {
try {
OutputStream outStream = csb.getOutputStream();
- XMLStreamWriter writer = XMLOutputFactory.newInstance().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
+ XMLStreamWriter writer = XmlHelper.getXMLOutputFactory().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
XmlErrorDocumentProducer producer = new XmlErrorDocumentProducer();
producer.writeErrorDocument(writer, errorCode, message, locale, innerError);
@@ -162,7 +163,7 @@ public class AtomEntityProvider implements ContentTypeBasedEntityProvider {
try {
OutputStream outStream = csb.getOutputStream();
- XMLStreamWriter writer = XMLOutputFactory.newInstance().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
+ XMLStreamWriter writer = XmlHelper.getXMLOutputFactory().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
writer.writeStartDocument(DEFAULT_CHARSET, XML_VERSION);
AtomEntryEntityProducer as = new AtomEntryEntityProducer(properties);
@@ -198,7 +199,7 @@ public class AtomEntityProvider implements ContentTypeBasedEntityProvider {
try {
OutputStream outStream = csb.getOutputStream();
- XMLStreamWriter writer = XMLOutputFactory.newInstance().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
+ XMLStreamWriter writer = XmlHelper.getXMLOutputFactory().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
writer.writeStartDocument(DEFAULT_CHARSET, XML_VERSION);
XmlPropertyEntityProducer ps = new XmlPropertyEntityProducer(false, true);
@@ -225,7 +226,7 @@ public class AtomEntityProvider implements ContentTypeBasedEntityProvider {
try {
OutputStream outStream = csb.getOutputStream();
- XMLStreamWriter writer = XMLOutputFactory.newInstance().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
+ XMLStreamWriter writer = XmlHelper.getXMLOutputFactory().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
writer.writeStartDocument(DEFAULT_CHARSET, XML_VERSION);
AtomFeedProducer atomFeedProvider = new AtomFeedProducer(properties);
@@ -254,7 +255,7 @@ public class AtomEntityProvider implements ContentTypeBasedEntityProvider {
try {
OutputStream outStream = csb.getOutputStream();
- XMLStreamWriter writer = XMLOutputFactory.newInstance().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
+ XMLStreamWriter writer = XmlHelper.getXMLOutputFactory().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
writer.writeStartDocument(DEFAULT_CHARSET, XML_VERSION);
XmlLinkEntityProducer entity = new XmlLinkEntityProducer(properties);
@@ -283,7 +284,7 @@ public class AtomEntityProvider implements ContentTypeBasedEntityProvider {
try {
OutputStream outStream = csb.getOutputStream();
- XMLStreamWriter writer = XMLOutputFactory.newInstance().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
+ XMLStreamWriter writer = XmlHelper.getXMLOutputFactory().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
writer.writeStartDocument(DEFAULT_CHARSET, XML_VERSION);
XmlLinksEntityProducer entity = new XmlLinksEntityProducer(properties);
@@ -310,7 +311,7 @@ public class AtomEntityProvider implements ContentTypeBasedEntityProvider {
try {
OutputStream outStream = csb.getOutputStream();
- XMLStreamWriter writer = XMLOutputFactory.newInstance().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
+ XMLStreamWriter writer = XmlHelper.getXMLOutputFactory().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
writer.writeStartDocument(DEFAULT_CHARSET, XML_VERSION);
XmlCollectionEntityProducer.append(writer, propertyInfo, data);
http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/1c81f7ba/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/BasicEntityProvider.java
----------------------------------------------------------------------
diff --git a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/BasicEntityProvider.java b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/BasicEntityProvider.java
index 7d9a59c..0b34b42 100644
--- a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/BasicEntityProvider.java
+++ b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/BasicEntityProvider.java
@@ -51,6 +51,7 @@ import org.apache.olingo.odata2.api.edm.provider.Schema;
import org.apache.olingo.odata2.api.ep.EntityProviderException;
import org.apache.olingo.odata2.api.processor.ODataResponse;
import org.apache.olingo.odata2.api.processor.ODataResponse.ODataResponseBuilder;
+import org.apache.olingo.odata2.core.commons.XmlHelper;
import org.apache.olingo.odata2.core.ep.producer.XmlMetadataProducer;
import org.apache.olingo.odata2.core.ep.util.CircleStreamBuffer;
@@ -242,7 +243,7 @@ public class BasicEntityProvider {
CircleStreamBuffer csb = new CircleStreamBuffer();
try {
writer = new OutputStreamWriter(csb.getOutputStream(), DEFAULT_CHARSET);
- XMLStreamWriter xmlStreamWriter = XMLOutputFactory.newInstance().createXMLStreamWriter(writer);
+ XMLStreamWriter xmlStreamWriter = XmlHelper.getXMLOutputFactory().createXMLStreamWriter(writer);
XmlMetadataProducer.writeMetadata(metadata, xmlStreamWriter, predefinedNamespaces);
} catch (UnsupportedEncodingException e) {
throw new EntityProviderProducerException(EntityProviderException.EXCEPTION_OCCURRED.addContent(e.getClass()
http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/1c81f7ba/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/producer/AtomServiceDocumentProducer.java
----------------------------------------------------------------------
diff --git a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/producer/AtomServiceDocumentProducer.java b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/producer/AtomServiceDocumentProducer.java
index d5827e2..ffd3748 100644
--- a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/producer/AtomServiceDocumentProducer.java
+++ b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ep/producer/AtomServiceDocumentProducer.java
@@ -33,6 +33,7 @@ import org.apache.olingo.odata2.api.edm.EdmServiceMetadata;
import org.apache.olingo.odata2.api.ep.EntityProviderException;
import org.apache.olingo.odata2.api.exception.ODataException;
import org.apache.olingo.odata2.core.commons.ContentType;
+import org.apache.olingo.odata2.core.commons.XmlHelper;
import org.apache.olingo.odata2.core.ep.EntityProviderProducerException;
import org.apache.olingo.odata2.core.ep.util.FormatXml;
@@ -57,7 +58,7 @@ public class AtomServiceDocumentProducer {
EdmServiceMetadata serviceMetadata = edm.getServiceMetadata();
try {
- XMLStreamWriter xmlStreamWriter = XMLOutputFactory.newInstance().createXMLStreamWriter(writer);
+ XMLStreamWriter xmlStreamWriter = XmlHelper.getXMLOutputFactory().createXMLStreamWriter(writer);
xmlStreamWriter.writeStartDocument(DEFAULT_CHARSET, XML_VERSION);
xmlStreamWriter.setPrefix(Edm.PREFIX_XML, Edm.NAMESPACE_XML_1998);
http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/1c81f7ba/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/LoadXMLFactoryTest.java
----------------------------------------------------------------------
diff --git a/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/LoadXMLFactoryTest.java b/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/LoadXMLFactoryTest.java
index 3af05cd..3aae2dd 100644
--- a/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/LoadXMLFactoryTest.java
+++ b/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/LoadXMLFactoryTest.java
@@ -6,9 +6,9 @@
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -26,7 +26,7 @@ import javax.xml.stream.XMLOutputFactory;
import org.junit.Test;
/**
- *
+ *
*/
public class LoadXMLFactoryTest {
// CHECKSTYLE:OFF
http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/1c81f7ba/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/PerformanceTest.java
----------------------------------------------------------------------
diff --git a/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/PerformanceTest.java b/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/PerformanceTest.java
index e7ab5b9..b97a0b9 100644
--- a/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/PerformanceTest.java
+++ b/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/PerformanceTest.java
@@ -36,6 +36,7 @@ import org.apache.olingo.odata2.api.edm.EdmEntitySet;
import org.apache.olingo.odata2.api.ep.EntityProviderWriteProperties;
import org.apache.olingo.odata2.api.exception.ODataException;
import org.apache.olingo.odata2.api.uri.ExpandSelectTreeNode;
+import org.apache.olingo.odata2.core.commons.XmlHelper;
import org.apache.olingo.odata2.core.ep.aggregator.EntityInfoAggregator;
import org.apache.olingo.odata2.core.ep.producer.AtomEntryEntityProducer;
import org.apache.olingo.odata2.core.ep.util.CircleStreamBuffer;
@@ -79,7 +80,7 @@ public class PerformanceTest extends AbstractProviderTest {
outStream = new ByteArrayOutputStream();
}
- writer = XMLOutputFactory.newInstance().createXMLStreamWriter(outStream, "utf-8");
+ writer = XmlHelper.getXMLOutputFactory().createXMLStreamWriter(outStream, "utf-8");
writer.writeStartElement("junit");
writer.writeDefaultNamespace(Edm.NAMESPACE_ATOM_2005);
http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/1c81f7ba/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/producer/TombstoneProducerTest.java
----------------------------------------------------------------------
diff --git a/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/producer/TombstoneProducerTest.java b/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/producer/TombstoneProducerTest.java
index 11fc21a..aa2829d 100644
--- a/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/producer/TombstoneProducerTest.java
+++ b/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/producer/TombstoneProducerTest.java
@@ -40,6 +40,7 @@ import org.apache.olingo.odata2.api.ep.EntityProviderException;
import org.apache.olingo.odata2.api.ep.EntityProviderWriteProperties;
import org.apache.olingo.odata2.api.ep.callback.TombstoneCallback;
import org.apache.olingo.odata2.core.commons.ContentType;
+import org.apache.olingo.odata2.core.commons.XmlHelper;
import org.apache.olingo.odata2.core.ep.AbstractProviderTest;
import org.apache.olingo.odata2.core.ep.aggregator.EntityInfoAggregator;
import org.apache.olingo.odata2.core.ep.util.CircleStreamBuffer;
@@ -65,7 +66,7 @@ public class TombstoneProducerTest extends AbstractProviderTest {
public void initialize() throws Exception {
csb = new CircleStreamBuffer();
OutputStream outStream = csb.getOutputStream();
- writer = XMLOutputFactory.newInstance().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
+ writer = XmlHelper.getXMLOutputFactory().createXMLStreamWriter(outStream, DEFAULT_CHARSET);
defaultProperties = EntityProviderWriteProperties.serviceRoot(BASE_URI).build();
defaultEia =
EntityInfoAggregator.create(MockFacade.getMockEdm().getDefaultEntityContainer().getEntitySet("Rooms"),
http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/1c81f7ba/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/producer/XmlMetadataProducerTest.java
----------------------------------------------------------------------
diff --git a/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/producer/XmlMetadataProducerTest.java b/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/producer/XmlMetadataProducerTest.java
index eb2a795..83961b7 100644
--- a/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/producer/XmlMetadataProducerTest.java
+++ b/odata2-lib/odata-core/src/test/java/org/apache/olingo/odata2/core/ep/producer/XmlMetadataProducerTest.java
@@ -41,6 +41,7 @@ import org.apache.olingo.odata2.api.edm.provider.Property;
import org.apache.olingo.odata2.api.edm.provider.PropertyRef;
import org.apache.olingo.odata2.api.edm.provider.Schema;
import org.apache.olingo.odata2.api.edm.provider.SimpleProperty;
+import org.apache.olingo.odata2.core.commons.XmlHelper;
import org.apache.olingo.odata2.core.ep.AbstractXmlProducerTestHelper;
import org.apache.olingo.odata2.core.ep.util.CircleStreamBuffer;
import org.apache.olingo.odata2.testutil.helper.StringHelper;
@@ -60,7 +61,7 @@ public class XmlMetadataProducerTest extends AbstractXmlProducerTestHelper {
@Before
public void before() {
- xmlStreamWriterFactory = XMLOutputFactory.newInstance();
+ xmlStreamWriterFactory = XmlHelper.getXMLOutputFactory();
}
@Test