You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commons-dev@ws.apache.org by ve...@apache.org on 2009/08/06 21:15:34 UTC

svn commit: r801780 - in /webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom: om/ om/util/ soap/ soap/impl/llom/

Author: veithen
Date: Thu Aug  6 19:15:34 2009
New Revision: 801780

URL: http://svn.apache.org/viewvc?rev=801780&view=rev
Log:
Reduce the number of unclosed XMLStreamReader instances created during the unit test. This prevents XLXP from crashing with an OutOfMemoryError.

Modified:
    webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/NamespaceTest.java
    webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/OMTestCase.java
    webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/SerializationTest.java
    webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/StaxParserTest.java
    webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/util/CopyUtilsTest.java
    webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/util/OMElementHelperTest.java
    webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/soap/CashWihBuildElementTest.java
    webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/soap/impl/llom/OMEnvelopeTest.java

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/NamespaceTest.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/NamespaceTest.java?rev=801780&r1=801779&r2=801780&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/NamespaceTest.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/NamespaceTest.java Thu Aug  6 19:15:34 2009
@@ -381,9 +381,13 @@
                             "</innerTag>" +
                             "</outerTag>";
 
+            elem.close(false);
+            
             elem = AXIOMUtil.stringToOM(xmlString);
 //            System.out.println("\n--- Calling toString() ---\n");
 //            System.out.println(elem.toString());
+            
+            elem.close(false);
         }
         catch (Exception e) {
             e.printStackTrace();

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/OMTestCase.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/OMTestCase.java?rev=801780&r1=801779&r2=801780&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/OMTestCase.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/OMTestCase.java Thu Aug  6 19:15:34 2009
@@ -48,6 +48,11 @@
         soapEnvelope = (SOAPEnvelope) getOMBuilder("").getDocumentElement();
     }
 
+    protected void tearDown() throws Exception {
+        super.tearDown();
+        soapEnvelope.close(false);
+    }
+
     protected StAXSOAPModelBuilder getOMBuilder(String fileName) throws Exception {
         if ("".equals(fileName) || fileName == null) {
             fileName = TestConstants.SOAP_SOAPMESSAGE;

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/SerializationTest.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/SerializationTest.java?rev=801780&r1=801779&r2=801780&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/SerializationTest.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/SerializationTest.java Thu Aug  6 19:15:34 2009
@@ -333,6 +333,9 @@
             rootElement.addChild(childTwo);
 
             assertTrue(expectedXML.equals(rootElement.toString()));
+            
+            childOne.close(false);
+            childTwo.close(false);
         } catch (XMLStreamException e) {
             e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
         }

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/StaxParserTest.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/StaxParserTest.java?rev=801780&r1=801779&r2=801780&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/StaxParserTest.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/StaxParserTest.java Thu Aug  6 19:15:34 2009
@@ -19,6 +19,7 @@
 
 package org.apache.axiom.om;
 
+import org.apache.axiom.om.impl.builder.StAXOMBuilder;
 import org.apache.axiom.om.impl.llom.factory.OMXMLBuilderFactory;
 import org.apache.axiom.om.util.StAXUtils;
 
@@ -31,7 +32,9 @@
 public class StaxParserTest extends AbstractTestCase {
 
     XMLStreamReader parser1;
+    OMXMLParserWrapper builder2;
     XMLStreamReader parser2;
+    OMXMLParserWrapper builder3;
     XMLStreamReader parser3;
     XMLStreamReader parser4;
     String xmlDocument = "<purchase-order xmlns=\"http://openuri.org/easypo\">" +
@@ -54,20 +57,20 @@
 
         //parser 2 is one of our parsers taken with cache. i.e. when the parser
         //proceeds the object model will be built
-        OMXMLParserWrapper builder = OMXMLBuilderFactory.createStAXOMBuilder(
+        builder2 = OMXMLBuilderFactory.createStAXOMBuilder(
                 OMAbstractFactory.getSOAP11Factory(),
                 StAXUtils.createXMLStreamReader(
                         new ByteArrayInputStream(xmlDocument.getBytes())));
-        parser2 = builder.getDocumentElement().getXMLStreamReader();
+        parser2 = builder2.getDocumentElement().getXMLStreamReader();
 
         //same as parser2 but this time the parser is not a caching parser. Once the
         //parser proceeds, it's gone forever.
-        OMXMLParserWrapper builder2 = OMXMLBuilderFactory.createStAXOMBuilder(
+        builder3 = OMXMLBuilderFactory.createStAXOMBuilder(
                 OMAbstractFactory.getSOAP11Factory(),
                 StAXUtils.createXMLStreamReader(
                         new ByteArrayInputStream(xmlDocument.getBytes())));
         parser3 =
-                builder2.getDocumentElement().getXMLStreamReaderWithoutCaching();
+                builder3.getDocumentElement().getXMLStreamReaderWithoutCaching();
 
         //parser4 is another instance of our parser accessing the same stream as parser3.
         // Note - The implementation returns a *new* instance but with reference to
@@ -76,6 +79,12 @@
 
     }
 
+    protected void tearDown() throws Exception {
+        parser1.close();
+        ((StAXOMBuilder)builder2).close();
+        ((StAXOMBuilder)builder3).close();
+    }
+
     public void testParserEventsWithCache() throws Exception {
 
         //check the initial event
@@ -147,6 +156,8 @@
         } catch (Exception e) {
             //if we are here without failing, then we are successful
         }
+        
+        documentElement.close(false);
     }
 
 
@@ -181,6 +192,8 @@
         }
 
         assertEquals("Number of elements need to be 2", count, 2);
+        
+        documentElement.close(false);
     }
 
 
@@ -214,6 +227,8 @@
         } catch (Exception e) {
             fail("This should throw an XMLStreamException");
         }
+        
+        documentElement.close(false);
     }
 
 }

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/util/CopyUtilsTest.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/util/CopyUtilsTest.java?rev=801780&r1=801779&r2=801780&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/util/CopyUtilsTest.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/util/CopyUtilsTest.java Thu Aug  6 19:15:34 2009
@@ -155,7 +155,7 @@
                    sourceText.equals(targetText));
         }
         
-        
+        sourceEnv.close(false);
     }
     
     /**

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/util/OMElementHelperTest.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/util/OMElementHelperTest.java?rev=801780&r1=801779&r2=801780&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/util/OMElementHelperTest.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/om/util/OMElementHelperTest.java Thu Aug  6 19:15:34 2009
@@ -50,5 +50,7 @@
         assertTrue(importedElement != documentElement);
         assertTrue(importedElement.getOMFactory().getClass().isInstance(
                 DOOMAbstractFactory.getOMFactory()));
+        
+        documentElement.close(false);
     }
 }

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/soap/CashWihBuildElementTest.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/soap/CashWihBuildElementTest.java?rev=801780&r1=801779&r2=801780&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/soap/CashWihBuildElementTest.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/soap/CashWihBuildElementTest.java Thu Aug  6 19:15:34 2009
@@ -48,6 +48,10 @@
         rootElement = stAXOMBuilder.getDocumentElement();
     }
 
+    protected void tearDown() throws Exception {
+        rootElement.close(false);
+    }
+
     public void testWithCashAndBuild() throws Exception {
         SOAPFactory soapFactory = new SOAP11Factory();
         SOAPEnvelope envelope = soapFactory.getDefaultEnvelope();

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/soap/impl/llom/OMEnvelopeTest.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/soap/impl/llom/OMEnvelopeTest.java?rev=801780&r1=801779&r2=801780&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/soap/impl/llom/OMEnvelopeTest.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-tests/src/test/java/org/apache/axiom/soap/impl/llom/OMEnvelopeTest.java Thu Aug  6 19:15:34 2009
@@ -65,12 +65,14 @@
         assertTrue("Header information retrieved not correct",
                    (header != null &&
                            header.getLocalName().equalsIgnoreCase("Header")));
+        header.close(false);
     }
 
     public void testGetBody2() throws Exception {
         SOAPBody body = getSecondEnvelope().getBody();
         assertTrue("Header information retrieved not correct",
                    (body != null && body.getLocalName().equalsIgnoreCase("Body")));
+        body.close(false);
     }
 
     public void testDefaultEnveleope() {