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 <[email protected]> Authored: Tue Apr 19 22:22:19 2016 +0200 Committer: Michael Bolz <[email protected]> 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
