Modified: xmlbeans/trunk/src/test/java/xmlcursor/xquery/detailed/XQueryTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlcursor/xquery/detailed/XQueryTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlcursor/xquery/detailed/XQueryTest.java 
(original)
+++ xmlbeans/trunk/src/test/java/xmlcursor/xquery/detailed/XQueryTest.java Thu 
Jan  6 17:54:30 2022
@@ -35,13 +35,14 @@ public class XQueryTest {
         InputStream input = 
JarUtil.getResourceFromJarasStream("xbean/xmlcursor/XQueryInput.xml");
 
         XmlObject o = XmlObject.Factory.parse(input);
-        XmlCursor c = o.newCursor();
-        XmlCursor c1 = c.execQuery(xq);
-        c1.toFirstContentToken();
-        assertEquals("<employee>\n" +
-                     "\t\t<name>Bob</name>\n" +
-                     "\t\t<ssn>1000</ssn>\n" +
-                     "\t</employee>", c1.xmlText());
+        try (XmlCursor c = o.newCursor();
+            XmlCursor c1 = c.execQuery(xq)) {
+            c1.toFirstContentToken();
+            assertEquals("<employee>\n" +
+                         "\t\t<name>Bob</name>\n" +
+                         "\t\t<ssn>1000</ssn>\n" +
+                         "\t</employee>", c1.xmlText());
+        }
 
         XmlObject[] res = o.execQuery(xq);
         EmpT employeeType = (EmpT) res[0];
@@ -62,39 +63,28 @@ public class XQueryTest {
             reslt[1].xmlText());
         assertEquals("<person><name>NotBob</name></person>",
             reslt[2].xmlText());
-        XmlCursor c = o.newCursor();
 
-        //via Cursor
-        /*XmlCursor c1=c.execQuery(query);
-         c1.toFirstContentToken();
-        assertEquals("<person><name>Bob</name></person>",
-                      c1.xmlText() );
-          c1.toNextSibling();
-        assertEquals("<person><name>Beth</name></person>",
-                      c1.xmlText() );
-        c1.dispose();
-        c.dispose();
-        */
-        int i = 0;
-        while (i++ < 2) {
-            //via Cursor--new
-            XmlCursor c1 = c.execQuery(query);
-            //c.dispose();
-            assertEquals(XmlCursor.TokenType.STARTDOC, c1.currentTokenType());
-            assertEquals(XmlCursor.TokenType.START, c1.toNextToken());
-            assertEquals("<person><name>Bob</name></person>",
-                c1.xmlText());
-            // assertTrue(c1.toNextSelection());
-            assertTrue(c1.toNextSibling());
-            assertEquals("<person><name>Beth</name></person>",
-                c1.xmlText());
-            //assertTrue(c1.toNextSelection());
-            assertTrue(c1.toNextSibling());
-            assertEquals("<person><name>NotBob</name></person>",
-                c1.xmlText());
-            c1.dispose();
+        try (XmlCursor c = o.newCursor()) {
+            int i = 0;
+            while (i++ < 2) {
+                //via Cursor--new
+                try (XmlCursor c1 = c.execQuery(query)) {
+                    //c.dispose();
+                    assertEquals(XmlCursor.TokenType.STARTDOC, 
c1.currentTokenType());
+                    assertEquals(XmlCursor.TokenType.START, c1.toNextToken());
+                    assertEquals("<person><name>Bob</name></person>",
+                        c1.xmlText());
+                    // assertTrue(c1.toNextSelection());
+                    assertTrue(c1.toNextSibling());
+                    assertEquals("<person><name>Beth</name></person>",
+                        c1.xmlText());
+                    //assertTrue(c1.toNextSelection());
+                    assertTrue(c1.toNextSibling());
+                    assertEquals("<person><name>NotBob</name></person>",
+                        c1.xmlText());
+                }
+            }
         }
-        c.dispose();
     }
 
     @Test
@@ -102,34 +92,33 @@ public class XQueryTest {
         String query = 
JarUtil.getResourceFromJar("xbean/xmlcursor/xquery/Join.xq");
         InputStream input = 
JarUtil.getResourceFromJarasStream("xbean/xmlcursor/XQueryInput.xml");
         XmlObject o = XmlObject.Factory.parse(input);
-        XmlCursor c = o.newCursor();
-        XmlCursor c1 = c.execQuery(query);
 
-        //  assertEquals(3, c1.getSelectionCount());
-        c1.toFirstContentToken();
-        assertEquals("<result>" +
-                     "<ssn>1000</ssn>,\n" +
-                     "\t\t<name>Bob</name>,\n" +
-                     "\t\t<name>NotBob</name>" +
-                     "</result>",
-            c1.xmlText());
-/*      assertEquals("<xml-fragment>" +
-              "<result>" +
-              "<ssn>1000</ssn>,\n" +
-              "\t\t<name>Bob</name>,\n" +
-              "\t\t<name>NotBob</name>" +
-              "</result>" +
-              "<result><ssn>1001</ssn>,\n" +
-              "\t\t<name>Beth</name>,\n" +
-              "\t\t</result>" +
-              "<result><ssn>1000</ssn>,\n" +
-              "\t\t<name>NotBob</name>,\n" +
-              "\t\t<name>Bob</name>" +
-              "</result>" +
-              "</xml-fragment>",
-                    c1.xmlText() ); */
-        c1.dispose();
-        c.dispose();
+        try (XmlCursor c = o.newCursor();
+            XmlCursor c1 = c.execQuery(query)) {
+            c1.toFirstContentToken();
+            assertEquals("<result>" +
+                         "<ssn>1000</ssn>,\n" +
+                         "\t\t<name>Bob</name>,\n" +
+                         "\t\t<name>NotBob</name>" +
+                         "</result>",
+                c1.xmlText());
+/*          assertEquals("<xml-fragment>" +
+                "<result>" +
+                "<ssn>1000</ssn>,\n" +
+                "\t\t<name>Bob</name>,\n" +
+                "\t\t<name>NotBob</name>" +
+                "</result>" +
+                "<result><ssn>1001</ssn>,\n" +
+                "\t\t<name>Beth</name>,\n" +
+                "\t\t</result>" +
+                "<result><ssn>1000</ssn>,\n" +
+                "\t\t<name>NotBob</name>,\n" +
+                "\t\t<name>Bob</name>" +
+                "</result>" +
+                "</xml-fragment>",
+                        c1.xmlText() ); */
+
+        }
 
         XmlObject[] res = o.execQuery(query);
         assertEquals(3, res.length);
@@ -152,19 +141,18 @@ public class XQueryTest {
         String query = ".//text()";
         InputStream input = 
JarUtil.getResourceFromJarasStream("xbean/xmlcursor/XQueryInput.xml");
         XmlObject o = XmlObject.Factory.parse(input);
-        XmlCursor c = o.newCursor();
-        XmlCursor c1 = c.execQuery(query);
-           assertEquals(XmlCursor.TokenType.TEXT,c1.toNextToken());
-        //  assertEquals()
-        //assertEquals(19, c1.getSelectionCount());
-        c.dispose();//make sure this doesn't screw things up
-        while (c1.toNextSibling())
-            assertEquals(XmlCursor.TokenType.TEXT, c1.currentTokenType());
-        c1.toStartDoc();
-        assertEquals("<xml-fragment>Bob</xml-fragment>",
-                c1.xmlText());
-        c1.dispose();
-        c.dispose();
+        try (XmlCursor c = o.newCursor();
+            XmlCursor c1 = c.execQuery(query)) {
+            assertEquals(XmlCursor.TokenType.TEXT,c1.toNextToken());
+            //assertEquals(19, c1.getSelectionCount());
+            c.close(); // make sure this doesn't screw things up
+            while (c1.toNextSibling()) {
+                assertEquals(XmlCursor.TokenType.TEXT, c1.currentTokenType());
+            }
+            c1.toStartDoc();
+            assertEquals("<xml-fragment>Bob</xml-fragment>",
+                    c1.xmlText());
+        }
     }
 
     @Test
@@ -173,12 +161,11 @@ public class XQueryTest {
         //String query = "<result>{$this},{count(//employee)}</result>";
         String query = "<result>{.},{count(//employee)}</result>";
         InputStream input = 
JarUtil.getResourceFromJarasStream("xbean/xmlcursor/XQueryInput.xml");
-        XmlCursor c = XmlObject.Factory.parse(input).newCursor();
-        XmlCursor c1 = c.execQuery(query);
-        assertEquals("",
-            c1.xmlText());
-        c1.dispose();
-        c.dispose();
+        try (XmlCursor c = XmlObject.Factory.parse(input).newCursor();
+            XmlCursor c1 = c.execQuery(query)) {
+            assertEquals("",
+                c1.xmlText());
+        }
     }
 
     @Test
@@ -187,15 +174,17 @@ public class XQueryTest {
         String query = "<result>{.},{count(//employee)}</result>";
         String input = "<foo><a><b>text</b>more text</a></foo>";
         XmlObject o = XmlObject.Factory.parse(input);
-        XmlCursor c = o.newCursor();
 
-        XmlObject[] res = o.execQuery("//a");
-        assertEquals("<a><b>text</b>more text</a>", res[0].xmlText());
-
-        XmlCursor cur = c.execQuery("//a");
-        // assertEquals(1, cur.getSelectionCount());
-        cur.toFirstContentToken();
-        assertEquals("<a><b>text</b>more text</a>", cur.xmlText());
+        try (XmlCursor c = o.newCursor()) {
+            XmlObject[] res = o.execQuery("//a");
+            assertEquals("<a><b>text</b>more text</a>", res[0].xmlText());
+
+            try (XmlCursor cur = c.execQuery("//a")) {
+                // assertEquals(1, cur.getSelectionCount());
+                cur.toFirstContentToken();
+                assertEquals("<a><b>text</b>more text</a>", cur.xmlText());
+            }
+        }
     }
 
     @Test
@@ -203,12 +192,11 @@ public class XQueryTest {
     public void testMultiDocJoin() throws XmlException, IOException {
         String query = 
JarUtil.getResourceFromJar("xbean/xmlcursor/xquery/2DocJoin.xq");
         InputStream input = 
JarUtil.getResourceFromJarasStream("xbean/xmlcursor/XQueryInput.xml");
-        XmlCursor c = XmlObject.Factory.parse(input).newCursor();
-        XmlCursor c1 = c.execQuery(query);
-        assertEquals("",
-            c1.xmlText());
-        c1.dispose();
-        c.dispose();
+        try (XmlCursor c = XmlObject.Factory.parse(input).newCursor();
+            XmlCursor c1 = c.execQuery(query)) {
+            assertEquals("",
+                c1.xmlText());
+        }
     }
 
     @Test
@@ -261,13 +249,12 @@ public class XQueryTest {
             res[0].xmlText());
         
assertEquals("<dept><deptno>5</deptno><headcount>1</headcount><payroll>40</payroll></dept>",
             res[1].xmlText());
-        XmlCursor c = o.newCursor();
-        XmlCursor c1 = c.execQuery(query);
-        c1.toFirstContentToken();
-        assertEquals(res[0].xmlText(),
-            c1.xmlText());
-        c1.dispose();
-        c.dispose();
+        try (XmlCursor c = o.newCursor();
+            XmlCursor c1 = c.execQuery(query)) {
+            c1.toFirstContentToken();
+            assertEquals(res[0].xmlText(),
+                c1.xmlText());
+        }
     }
 
     @Test

Modified: 
xmlbeans/trunk/src/test/java/xmlcursor/xquery/detailed/XQueryVariableBindingTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlcursor/xquery/detailed/XQueryVariableBindingTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- 
xmlbeans/trunk/src/test/java/xmlcursor/xquery/detailed/XQueryVariableBindingTest.java
 (original)
+++ 
xmlbeans/trunk/src/test/java/xmlcursor/xquery/detailed/XQueryVariableBindingTest.java
 Thu Jan  6 17:54:30 2022
@@ -63,30 +63,30 @@ public class XQueryVariableBindingTest e
     /** test the automatic binding of $this to the current node: selectPath() 
*/
     @Test
     public void testThisVariable1() throws Exception {
-        XmlCursor xc = _testDocCursor1();
-        xc.toFirstChild(); //<elem1>
-        xc.toFirstChild(); //<elem11>
-        xc.selectPath("//*[@idRef=$this/@id]");
-        _verifySelection(xc);
-        xc.clearSelections();
-        xc.dispose();
+        try (XmlCursor xc = _testDocCursor1()) {
+            xc.toFirstChild(); //<elem1>
+            xc.toFirstChild(); //<elem11>
+            xc.selectPath("//*[@idRef=$this/@id]");
+            _verifySelection(xc);
+            xc.clearSelections();
+        }
     }
 
     // this fails: see JIRA issue XMLBEANS-276
     /** test the binding of a variable to the current node: selectPath() */
     @Test
     public void testCurrentNodeVariable1() throws Exception {
-        XmlCursor xc = _testDocCursor1();
-        xc.toFirstChild();
-        xc.toFirstChild();
-        XmlOptions opts = new XmlOptions();
-        opts.setXqueryCurrentNodeVar("cur");
-        //String varDecl = "declare variable $cur external; ";
-        //xc.selectPath(varDecl + "//*[@idRef=$cur/@id]", opts);
-        xc.selectPath("//*[@idRef=$cur/@id]", opts);
-        _verifySelection(xc);
-        xc.clearSelections();
-        xc.dispose();
+        try (XmlCursor xc = _testDocCursor1()) {
+            xc.toFirstChild();
+            xc.toFirstChild();
+            XmlOptions opts = new XmlOptions();
+            opts.setXqueryCurrentNodeVar("cur");
+            //String varDecl = "declare variable $cur external; ";
+            //xc.selectPath(varDecl + "//*[@idRef=$cur/@id]", opts);
+            xc.selectPath("//*[@idRef=$cur/@id]", opts);
+            _verifySelection(xc);
+            xc.clearSelections();
+        }
     }
 
     private XmlCursor _testDocCursor2() throws Exception {
@@ -108,24 +108,20 @@ public class XQueryVariableBindingTest e
     @Test
     public void testThisVariable2() throws Exception
     {
-        XmlCursor xc = _testDocCursor2();
-        // xc.toNextToken();
         String q =
             "for $e in $this/employees/employee " +
             "let $s := $e/address/state " +
             "where $s = 'WA' " +
             "return $e//phone[@location='work']";
-        XmlCursor qc = xc.execQuery(q);
-        _verifyQueryResult(qc);
-        xc.dispose();
-        qc.dispose();
+        try (XmlCursor xc = _testDocCursor2();
+            XmlCursor qc = xc.execQuery(q)) {
+            _verifyQueryResult(qc);
+        }
     }
 
     /** test the binding of a variable to the current node: execQuery() */
     @Test
     public void testCurrentNodeVariable2() throws Exception {
-        XmlCursor xc = _testDocCursor2();
-        // xc.toNextToken();
         String q =
             "for $e in $cur/employees/employee " +
             "let $s := $e/address/state " +
@@ -133,12 +129,10 @@ public class XQueryVariableBindingTest e
             "return $e//phone[@location='work']";
         XmlOptions opts = new XmlOptions();
         opts.setXqueryCurrentNodeVar("cur");
-        //String varDecl = "declare variable $cur external; ";
-        //XmlCursor qc = xc.execQuery(varDecl + q, opts);
-        XmlCursor qc = xc.execQuery(q, opts);
-        _verifyQueryResult(qc);
-        xc.dispose();
-        qc.dispose();
+        try (XmlCursor xc = _testDocCursor2();
+            XmlCursor qc = xc.execQuery(q, opts)) {
+            _verifyQueryResult(qc);
+        }
     }
 
     private XmlObject[] _execute(XmlObject xo, Map m, String q) {

Modified: xmlbeans/trunk/src/test/java/xmlobject/checkin/AssortedTests.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlobject/checkin/AssortedTests.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlobject/checkin/AssortedTests.java (original)
+++ xmlbeans/trunk/src/test/java/xmlobject/checkin/AssortedTests.java Thu Jan  
6 17:54:30 2022
@@ -36,20 +36,21 @@ public class AssortedTests {
     @Test
     public void testSaverCharEscaping() throws XmlException {
         XmlObject xdoc = XmlObject.Factory.parse("<test>something</test>");
-        XmlCursor cur = xdoc.newCursor();
-        cur.toFirstChild();
-        // valid chars
-        cur.setTextValue("<something or other:\u03C0\uD7FF>");
-        assertEquals("<test>&lt;something or other:\u03C0\uD7FF></test>", 
xdoc.toString());
-
-        // invalid chars - control chars, FFFF/FFFE, etc
-        cur.setTextValue("<something\0or\1other:\u0045\u001F>");
-        assertEquals("<test>&lt;something?or?other:\u0045?></test>", 
xdoc.toString());
-
-        String greekChars = 
"\uD835\uDF4A\uD835\uDF4B\uD835\uDF4C\uD835\uDF4D\uD835\uDF4E\uD835\uDF4F\uD835\uDF50\uD835"
-                            + 
"\uDF51\uD835\uDF52\uD835\uDF53\uD835\uDF54\uD835\uDF55";
-        cur.setTextValue(greekChars);
-        assertEquals("<test>" + greekChars + "</test>", xdoc.toString());
+        try (XmlCursor cur = xdoc.newCursor()) {
+            cur.toFirstChild();
+            // valid chars
+            cur.setTextValue("<something or other:\u03C0\uD7FF>");
+            assertEquals("<test>&lt;something or other:\u03C0\uD7FF></test>", 
xdoc.toString());
+
+            // invalid chars - control chars, FFFF/FFFE, etc
+            cur.setTextValue("<something\0or\1other:\u0045\u001F>");
+            assertEquals("<test>&lt;something?or?other:\u0045?></test>", 
xdoc.toString());
+
+            String greekChars = 
"\uD835\uDF4A\uD835\uDF4B\uD835\uDF4C\uD835\uDF4D\uD835\uDF4E\uD835\uDF4F\uD835\uDF50\uD835"
+                                + 
"\uDF51\uD835\uDF52\uD835\uDF53\uD835\uDF54\uD835\uDF55";
+            cur.setTextValue(greekChars);
+            assertEquals("<test>" + greekChars + "</test>", xdoc.toString());
+        }
     }
 
     // bug 26140/26104
@@ -156,12 +157,12 @@ public class AssortedTests {
         xobj = xcur.getObject();
         String result = xobj.toString();
         System.out.println(result);
-        
+
         xcur.toFirstChild();
         xcur.toFirstChild();
         xcur.toFirstContentToken();
         xcur.insertChars("<html><body>this is a test</body></html>");
-        
+
         System.out.println(xobj);
         */
     }
@@ -186,6 +187,7 @@ public class AssortedTests {
         int i = 0;
         try {
             for (i = 0; i < 2000 * 1000; i++) {
+                // Cursor not closed intentionally
                 XmlCursor cur = obj.newCursor();
                 // cur.dispose(); skipping this depends on finalization or 
else OOM
             }

Modified: 
xmlbeans/trunk/src/test/java/xmlobject/checkin/InstanceValidationTests.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlobject/checkin/InstanceValidationTests.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlobject/checkin/InstanceValidationTests.java 
(original)
+++ xmlbeans/trunk/src/test/java/xmlobject/checkin/InstanceValidationTests.java 
Thu Jan  6 17:54:30 2022
@@ -1205,16 +1205,16 @@ public class InstanceValidationTests {
                 "<hee yee='3'><haw>66</haw></hee>",
                 null, null);
 
-        XmlCursor c = x.newCursor();
+        try (XmlCursor c = x.newCursor()) {
+            do {
+                XmlObject obj = c.getObject();
 
-        do {
-            XmlObject obj = c.getObject();
-
-            if (obj != null) {
-                obj.validate();
-            }
+                if (obj != null) {
+                    obj.validate();
+                }
 
-        } while (!c.toNextToken().isNone());
+            } while (!c.toNextToken().isNone());
+        }
 
         // invalid
 
@@ -1225,26 +1225,27 @@ public class InstanceValidationTests {
 
         assertTrue(!x.validate());
 
-        c = x.newCursor();
-        c.toNextToken();
-        c.toNextToken();
+        try (XmlCursor c = x.newCursor()) {
+            c.toNextToken();
+            c.toNextToken();
 
-        assertTrue(!c.getObject().validate());
+            assertTrue(!c.getObject().validate());
+        }
 
         // No schema
 
         x = XmlObject.Factory.parse("<foo x='y'>asas<bar>asas</bar></foo>");
 
-        c = x.newCursor();
+        try (XmlCursor c = x.newCursor()) {
+            do {
+                XmlObject obj = c.getObject();
 
-        do {
-            XmlObject obj = c.getObject();
-
-            if (obj != null) {
-                obj.validate();
-            }
+                if (obj != null) {
+                    obj.validate();
+                }
 
-        } while (!c.toNextToken().isNone());
+            } while (!c.toNextToken().isNone());
+        }
     }
 
     @Test(expected = XmlException.class)
@@ -1299,28 +1300,28 @@ public class InstanceValidationTests {
 
         assertTrue(x.validate());
 
-        XmlCursor c = x.newCursor();
+        try (XmlCursor c = x.newCursor()) {
+            c.toFirstChild();
 
-        c.toFirstChild();
+            XmlObject base = c.getObject();
 
-        XmlObject base = c.getObject();
+            c.toEndToken();
+            c.insertElement("bar");
 
-        c.toEndToken();
-        c.insertElement("bar");
+            assertTrue(!x.validate());
 
-        assertTrue(!x.validate());
+            c.toPrevSibling();
 
-        c.toPrevSibling();
+            c.removeXml();
 
-        c.removeXml();
+            assertTrue(x.validate());
 
-        assertTrue(x.validate());
-
-        base.changeType(stl.findType(new QName("derived")));
+            base.changeType(stl.findType(new QName("derived")));
 
-        c.insertElement("bar");
+            c.insertElement("bar");
 
-        assertTrue(x.validate());
+            assertTrue(x.validate());
+        }
     }
 
     // Tests abstract & block attributes on ComplexType
@@ -1872,10 +1873,10 @@ public class InstanceValidationTests {
                 stl.parse((String) validInstances[i], null, options);
 
             if (!startOnDocument) {
-                XmlCursor c = x.newCursor();
-                c.toFirstChild();
-                x = c.getObject();
-                c.dispose();
+                try (XmlCursor c = x.newCursor()) {
+                    c.toFirstChild();
+                    x = c.getObject();
+                }
             }
 
             List<XmlError> xel = new ArrayList<>();
@@ -1905,10 +1906,10 @@ public class InstanceValidationTests {
                 x = stl.parse((String) invalidInstances[i], null, options);
 
                 if (!startOnDocument) {
-                    XmlCursor c = x.newCursor();
-                    c.toFirstChild();
-                    x = c.getObject();
-                    c.dispose();
+                    try (XmlCursor c = x.newCursor()) {
+                        c.toFirstChild();
+                        x = c.getObject();
+                    }
                 }
 
                 boolean isValid = x.validate();

Modified: xmlbeans/trunk/src/test/java/xmlobject/checkin/XPathTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlobject/checkin/XPathTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlobject/checkin/XPathTest.java (original)
+++ xmlbeans/trunk/src/test/java/xmlobject/checkin/XPathTest.java Thu Jan  6 
17:54:30 2022
@@ -34,21 +34,20 @@ public class XPathTest {
                 "</b>" +
                 "<c>val3</c>" +
                 "</a>");
-        final XmlCursor c = obj.newCursor();
+        try (XmlCursor c = obj.newCursor()) {
+            c.selectPath(".//b/c");
 
-        c.selectPath(".//b/c");
+            int selCount = c.getSelectionCount();
+            assertEquals("SelectionCount", 1, selCount);
 
-        int selCount = c.getSelectionCount();
-        assertEquals("SelectionCount", 1, selCount);
+            while (c.hasNextSelection()) {
+                c.toNextSelection();
 
-        while (c.hasNextSelection()) {
-            c.toNextSelection();
-
-            assertTrue("OnStartElement", c.isStart());
-            assertEquals("TextValue", "val1", c.getTextValue());
-            System.out.println(" -> " + c.getObject());
+                assertTrue("OnStartElement", c.isStart());
+                assertEquals("TextValue", "val1", c.getTextValue());
+                System.out.println(" -> " + c.getObject());
+            }
         }
-        c.dispose();
     }
 
     @Test
@@ -64,29 +63,27 @@ public class XPathTest {
                 "</b>" +
                 "<c>val4</c>" +
                 "</a>");
-        final XmlCursor c = obj.newCursor();
+        try (XmlCursor c = obj.newCursor()) {
+            c.selectPath(".//b/c");
 
-        c.selectPath(".//b/c");
+            int selCount = c.getSelectionCount();
+            assertEquals("SelectionCount", 2, selCount);
 
-        int selCount = c.getSelectionCount();
-        assertEquals("SelectionCount", 2, selCount);
-
-        assertTrue("hasNextSelection", c.hasNextSelection());
-        c.toNextSelection();
-
-        System.out.println(" -> " + c.getObject());
-        assertTrue("OnStartElement", c.isStart());
-        assertEquals("TextValue", "val1", c.getTextValue());
+            assertTrue("hasNextSelection", c.hasNextSelection());
+            c.toNextSelection();
 
+            System.out.println(" -> " + c.getObject());
+            assertTrue("OnStartElement", c.isStart());
+            assertEquals("TextValue", "val1", c.getTextValue());
 
-        assertTrue("hasNextSelection2", c.hasNextSelection());
-        c.toNextSelection();
 
-        System.out.println(" -> " + c.getObject());
-        assertTrue("OnStartElement2", c.isStart());
-        assertEquals("TextValue2", "val3", c.getTextValue());
+            assertTrue("hasNextSelection2", c.hasNextSelection());
+            c.toNextSelection();
 
-        c.dispose();
+            System.out.println(" -> " + c.getObject());
+            assertTrue("OnStartElement2", c.isStart());
+            assertEquals("TextValue2", "val3", c.getTextValue());
+        }
     }
 
     @Test
@@ -106,20 +103,20 @@ public class XPathTest {
                 "</b>" +
                 "<c>val4</c>" +
                 "</a>");
-        final XmlCursor c = obj.newCursor();
 
-        c.selectPath(".//b/c//c");
+        try (XmlCursor c = obj.newCursor()) {
+            c.selectPath(".//b/c//c");
 
-        int selCount = c.getSelectionCount();
-        assertEquals("SelectionCount", 1, selCount);
+            int selCount = c.getSelectionCount();
+            assertEquals("SelectionCount", 1, selCount);
 
-        while (c.hasNextSelection()) {
-            c.toNextSelection();
+            while (c.hasNextSelection()) {
+                c.toNextSelection();
 
-            System.out.println(" -> " + c.getObject());
-            assertTrue("OnStartElement", c.isStart());
-            assertEquals("TextValue", "val5", c.getTextValue());
+                System.out.println(" -> " + c.getObject());
+                assertTrue("OnStartElement", c.isStart());
+                assertEquals("TextValue", "val5", c.getTextValue());
+            }
         }
-        c.dispose();
     }
 }

Modified: xmlbeans/trunk/src/test/java/xmlobject/common/StringXmlReader.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlobject/common/StringXmlReader.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlobject/common/StringXmlReader.java 
(original)
+++ xmlbeans/trunk/src/test/java/xmlobject/common/StringXmlReader.java Thu Jan  
6 17:54:30 2022
@@ -58,9 +58,8 @@ public class StringXmlReader implements
             return;
         }
 
-        try {
+        try (XmlCursor cur = x.newCursor()) {
             // Walk through the XML
-            XmlCursor cur = x.newCursor();
             cur.toStartDoc();
             do {
                 // Sleep for 10 milliseconds
@@ -73,7 +72,6 @@ public class StringXmlReader implements
                 //System.out.println("["+tName+"]: " + 
cur.currentTokenType().toString());
                 cur.toNextToken();
             } while (cur.hasNextToken());
-            cur.dispose();
         } catch (Exception e) {
             System.out.println("Exception in thread " + tName);
             e.printStackTrace();

Modified: xmlbeans/trunk/src/test/java/xmlobject/detailed/CompareToTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlobject/detailed/CompareToTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlobject/detailed/CompareToTest.java 
(original)
+++ xmlbeans/trunk/src/test/java/xmlobject/detailed/CompareToTest.java Thu Jan  
6 17:54:30 2022
@@ -96,10 +96,11 @@ public class CompareToTest {
     public void testCompareValue() throws Exception {
         m_xo = XmlObject.Factory.parse(
             JarUtil.getResourceFromJar(Common.TRANXML_FILE_CLM));
-        XmlCursor m_xc = m_xo.newCursor();
-        m_xc.toFirstChild();
-        XmlObject xo = m_xc.getObject();
-        assertEquals(XmlObject.NOT_EQUAL, m_xo.compareValue(xo));
+        try (XmlCursor m_xc = m_xo.newCursor()) {
+            m_xc.toFirstChild();
+            XmlObject xo = m_xc.getObject();
+            assertEquals(XmlObject.NOT_EQUAL, m_xo.compareValue(xo));
+        }
     }
 
     private XmlObject m_xo;

Modified: xmlbeans/trunk/src/test/java/xmlobject/detailed/SetIdentityTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlobject/detailed/SetIdentityTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlobject/detailed/SetIdentityTest.java 
(original)
+++ xmlbeans/trunk/src/test/java/xmlobject/detailed/SetIdentityTest.java Thu 
Jan  6 17:54:30 2022
@@ -36,12 +36,13 @@ public class SetIdentityTest {
         CarLocationMessageDocument clm =
                 (CarLocationMessageDocument) XmlObject.Factory.parse(
                         JarUtil.getResourceFromJar(Common.TRANXML_FILE_CLM));
-        XmlCursor xc = clm.newCursor();
 
-        xc.selectPath(Common.CLM_NS_XQUERY_DEFAULT + 
"$this//GeographicLocation");
-        xc.toNextSelection();
-        GeographicLocation gl = (GeographicLocation) xc.getObject();
-        xc.dispose();
+        GeographicLocation gl;
+        try (XmlCursor xc = clm.newCursor()) {
+            xc.selectPath(Common.CLM_NS_XQUERY_DEFAULT + 
"$this//GeographicLocation");
+            xc.toNextSelection();
+            gl = (GeographicLocation) xc.getObject();
+        }
         LocationIdentifier li = gl.addNewLocationIdentifier();
         li.setQualifier(CodeList309.FR);
         CodeList309 cl309 = li.xgetQualifier();
@@ -49,7 +50,6 @@ public class SetIdentityTest {
         li.xsetQualifier(cl309);
         gl.setLocationIdentifier(li);
         assertEquals(CodeList309.FR, 
gl.getLocationIdentifier().getQualifier());
-
     }
 
 }

Modified: xmlbeans/trunk/src/test/java/xmlobject/detailed/TypedObjectCursor.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlobject/detailed/TypedObjectCursor.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlobject/detailed/TypedObjectCursor.java 
(original)
+++ xmlbeans/trunk/src/test/java/xmlobject/detailed/TypedObjectCursor.java Thu 
Jan  6 17:54:30 2022
@@ -26,23 +26,24 @@ public class TypedObjectCursor {
     @Test
     public void testObjectCursor() {
         XmlPurchaseOrderDocumentBean.PurchaseOrder po = 
XmlPurchaseOrderDocumentBean.PurchaseOrder.Factory.newInstance();
-        XmlCursor cur = po.newCursor();
-        XmlCustomerBean cust = po.addNewCustomer();
-        cust.setAddress("123 Fake Street");
-        cust.setAge(23);
-        cust.setName("Lisa Simpson");
-        cur.toFirstContentToken();
-        assertEquals(XmlCursor.TokenType.START, cur.currentTokenType());
-        assertEquals(XmlCursor.TokenType.ATTR, cur.toNextToken());
-        assertEquals("<xml-fragment age=\"23\"/>", cur.xmlText());
-        assertEquals(XmlCursor.TokenType.START, cur.toNextToken());
-        assertEquals(XmlCursor.TokenType.TEXT, cur.toNextToken());
-        assertEquals("<xml-fragment>Lisa Simpson</xml-fragment>", 
cur.xmlText());
-        assertEquals(XmlCursor.TokenType.END, cur.toNextToken());
-        assertEquals(XmlCursor.TokenType.START, cur.toNextToken());
-        assertEquals(XmlCursor.TokenType.TEXT, cur.toNextToken());
-        assertEquals("<xml-fragment>123 Fake Street</xml-fragment>", 
cur.xmlText());
-        cur.toPrevToken();
-        cur.setTextValue("456".toCharArray(), 0, 3);
+        try (XmlCursor cur = po.newCursor()) {
+            XmlCustomerBean cust = po.addNewCustomer();
+            cust.setAddress("123 Fake Street");
+            cust.setAge(23);
+            cust.setName("Lisa Simpson");
+            cur.toFirstContentToken();
+            assertEquals(XmlCursor.TokenType.START, cur.currentTokenType());
+            assertEquals(XmlCursor.TokenType.ATTR, cur.toNextToken());
+            assertEquals("<xml-fragment age=\"23\"/>", cur.xmlText());
+            assertEquals(XmlCursor.TokenType.START, cur.toNextToken());
+            assertEquals(XmlCursor.TokenType.TEXT, cur.toNextToken());
+            assertEquals("<xml-fragment>Lisa Simpson</xml-fragment>", 
cur.xmlText());
+            assertEquals(XmlCursor.TokenType.END, cur.toNextToken());
+            assertEquals(XmlCursor.TokenType.START, cur.toNextToken());
+            assertEquals(XmlCursor.TokenType.TEXT, cur.toNextToken());
+            assertEquals("<xml-fragment>123 Fake Street</xml-fragment>", 
cur.xmlText());
+            cur.toPrevToken();
+            cur.setTextValue("456".toCharArray(), 0, 3);
+        }
     }
 }

Modified: xmlbeans/trunk/src/test/java/xmlobject/detailed/TypedSettersTests.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlobject/detailed/TypedSettersTests.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlobject/detailed/TypedSettersTests.java 
(original)
+++ xmlbeans/trunk/src/test/java/xmlobject/detailed/TypedSettersTests.java Thu 
Jan  6 17:54:30 2022
@@ -83,13 +83,14 @@ public class TypedSettersTests {
         throws Exception {
         XmlObject x = XmlObject.Factory.parse("<xyzzy/>");
         XmlObject x2 = XmlObject.Factory.parse("<bubba>moo</bubba>");
-        XmlCursor c = x.newCursor();
-        XmlCursor c2 = x2.newCursor();
 
-        c.toNextToken();
-        c2.toNextToken();
+        try (XmlCursor c = x.newCursor();
+            XmlCursor c2 = x2.newCursor()) {
+            c.toNextToken();
+            c2.toNextToken();
 
-        c.getObject().set(c2.getObject());
+            c.getObject().set(c2.getObject());
+        }
 
         assertEquals("<xyzzy>moo</xyzzy>", x.xmlText());
     }
@@ -99,15 +100,16 @@ public class TypedSettersTests {
         throws Exception {
         XmlObject x = XmlObject.Factory.parse("<xyzzy a=''/>");
         XmlObject x2 = XmlObject.Factory.parse("<bubba b='moo'/>");
-        XmlCursor c = x.newCursor();
-        XmlCursor c2 = x2.newCursor();
 
-        c.toNextToken();
-        c.toNextToken();
-        c2.toNextToken();
-        c2.toNextToken();
+        try (XmlCursor c = x.newCursor();
+            XmlCursor c2 = x2.newCursor()) {
+            c.toNextToken();
+            c.toNextToken();
+            c2.toNextToken();
+            c2.toNextToken();
 
-        c.getObject().set(c2.getObject());
+            c.getObject().set(c2.getObject());
+        }
 
         assertEquals("<xyzzy a=\"moo\"/>", x.xmlText());
     }

Modified: 
xmlbeans/trunk/src/test/java/xmlobject/schematypes/checkin/QNameTests.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlobject/schematypes/checkin/QNameTests.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlobject/schematypes/checkin/QNameTests.java 
(original)
+++ xmlbeans/trunk/src/test/java/xmlobject/schematypes/checkin/QNameTests.java 
Thu Jan  6 17:54:30 2022
@@ -53,22 +53,24 @@ public class QNameTests {
                 "<any " + ns + " xsi:type='xs:QName' xmlns:xxx='xxx.com'>" +
                     "xxx:abc</any>", null, null);
 
-        XmlCursor sourceCursor = sourceDocument.newCursor();
+        XmlQName sourceQName;
+        try (XmlCursor sourceCursor = sourceDocument.newCursor()) {
+            sourceCursor.toFirstChild();
 
-        sourceCursor.toFirstChild();
-
-        XmlQName sourceQName = (XmlQName) sourceCursor.getObject();
+            sourceQName = (XmlQName) sourceCursor.getObject();
+        }
 
         XmlObject targetDocument =
             stl.parse(
                 "<any " + ns + " xsi:type='xs:QName'>" +
                     "</any>", null, null);
 
-        XmlCursor targetCursor = targetDocument.newCursor();
-
-        targetCursor.toFirstChild();
+        XmlQName targetQName;
+        try (XmlCursor targetCursor = targetDocument.newCursor()) {
+            targetCursor.toFirstChild();
 
-        XmlQName targetQName = (XmlQName) targetCursor.getObject();
+            targetQName = (XmlQName) targetCursor.getObject();
+        }
 
         targetQName.set(sourceQName);
 
@@ -83,13 +85,11 @@ public class QNameTests {
                 "<any " + ns + " xsi:type='xs:QName' xmlns:xxx='xxx.com'>" +
                     "</any>", null, null);
 
-        targetCursor = targetDocument.newCursor();
-
-        targetCursor.toFirstChild();
+        try (XmlCursor targetCursor = targetDocument.newCursor()) {
+            targetCursor.toFirstChild();
 
-        targetQName = (XmlQName) targetCursor.getObject();
+            targetQName = (XmlQName) targetCursor.getObject();
 
-        try {
             targetQName.setStringValue("zzz:abc");
             fail("Must fail");
         } catch (Throwable t) {

Modified: 
xmlbeans/trunk/src/test/java/xmlobject/schematypes/checkin/SchemaTypesTests.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlobject/schematypes/checkin/SchemaTypesTests.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- 
xmlbeans/trunk/src/test/java/xmlobject/schematypes/checkin/SchemaTypesTests.java
 (original)
+++ 
xmlbeans/trunk/src/test/java/xmlobject/schematypes/checkin/SchemaTypesTests.java
 Thu Jan  6 17:54:30 2022
@@ -155,32 +155,36 @@ public class SchemaTypesTests {
         Person person = doc.getCustomer();
 
         XmlObject xmlobj;
-        XmlCursor xmlcurs;
 
         person.setFirstname("George");
         xmlobj = person.xgetFirstname();
-        xmlcurs = xmlobj.newCursor();
-        assertEquals("George", xmlcurs.getTextValue() );
+        try (XmlCursor xmlcurs = xmlobj.newCursor()) {
+            assertEquals("George", xmlcurs.getTextValue() );
+        }
 
         person.setQnameAtt( new QName("http://ggg.com","hhh";) );
         xmlobj = person.xgetQnameAtt();
-        xmlcurs = xmlobj.newCursor();
-        assertEquals("ggg:hhh", xmlcurs.getTextValue() );
+        try (XmlCursor xmlcurs = xmlobj.newCursor()) {
+            assertEquals("ggg:hhh", xmlcurs.getTextValue() );
+        }
 
         person.setQname( new QName("http://ggg.com/gggAgain","kkk";) );
         xmlobj = person.xgetQname();
-        xmlcurs = xmlobj.newCursor();
-        assertEquals("ggg1:kkk", xmlcurs.getTextValue() );
+        try (XmlCursor xmlcurs = xmlobj.newCursor()) {
+            assertEquals("ggg1:kkk", xmlcurs.getTextValue() );
+        }
 
         person.setAnyuri( "crossgain.com" );
         xmlobj = person.xgetAnyuri();
-        xmlcurs = xmlobj.newCursor();
-        assertEquals("crossgain.com", xmlcurs.getTextValue() );
+        try (XmlCursor xmlcurs = xmlobj.newCursor()) {
+            assertEquals("crossgain.com", xmlcurs.getTextValue() );
+        }
 
         person.setAnyuriAtt( "www.crossgain.com" );
         xmlobj = person.xgetAnyuriAtt();
-        xmlcurs = xmlobj.newCursor();
-        assertEquals("www.crossgain.com", xmlcurs.getTextValue() );
+        try (XmlCursor xmlcurs = xmlobj.newCursor()) {
+            assertEquals("www.crossgain.com", xmlcurs.getTextValue() );
+        }
 
         //person.setNotation("GIF");
         //xmlobj = person.getNotation();

Modified: 
xmlbeans/trunk/src/test/java/xmlobject/xmlloader/detailed/XmlStreamBeanReader.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlobject/xmlloader/detailed/XmlStreamBeanReader.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- 
xmlbeans/trunk/src/test/java/xmlobject/xmlloader/detailed/XmlStreamBeanReader.java
 (original)
+++ 
xmlbeans/trunk/src/test/java/xmlobject/xmlloader/detailed/XmlStreamBeanReader.java
 Thu Jan  6 17:54:30 2022
@@ -66,11 +66,12 @@ public class XmlStreamBeanReader {
     @Test
     public void testXmlStreamReaderException() throws XMLStreamException {
         XmlObject xo = XmlObject.Factory.newInstance();
-        XmlCursor xc = xo.newCursor();
-        xc.toNextToken();
+        try (XmlCursor xc = xo.newCursor()) {
+            xc.toNextToken();
 
-        xc.insertElementWithText("int", "http://openuri.org/testNumerals";, 
"5");
-        xc.insertElementWithText("float", "http://openuri.org/testNumerals";, 
"7.654321");
+            xc.insertElementWithText("int", "http://openuri.org/testNumerals";, 
"5");
+            xc.insertElementWithText("float", 
"http://openuri.org/testNumerals";, "7.654321");
+        }
 
         XMLStreamReader xsr = xo.newXMLStreamReader();
 

Modified: 
xmlbeans/trunk/src/test/java/xmltokensource/detailed/NewDomNodeTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmltokensource/detailed/NewDomNodeTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmltokensource/detailed/NewDomNodeTest.java 
(original)
+++ xmlbeans/trunk/src/test/java/xmltokensource/detailed/NewDomNodeTest.java 
Thu Jan  6 17:54:30 2022
@@ -112,11 +112,8 @@ public class NewDomNodeTest extends Basi
         assertNotNull(doc);
         XmlObject xo = XmlObject.Factory.parse(doc);
         m_xc = m_xo.newCursor();
-        XmlCursor xc1 = xo.newCursor();
-        try {
+        try (XmlCursor xc1 = xo.newCursor()) {
             compareDocTokens(m_xc, xc1);
-        } finally {
-            xc1.dispose();
         }
     }
 }

Modified: 
xmlbeans/trunk/src/test/java/xmltokensource/detailed/PrettyPrintNamespaceTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmltokensource/detailed/PrettyPrintNamespaceTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- 
xmlbeans/trunk/src/test/java/xmltokensource/detailed/PrettyPrintNamespaceTest.java
 (original)
+++ 
xmlbeans/trunk/src/test/java/xmltokensource/detailed/PrettyPrintNamespaceTest.java
 Thu Jan  6 17:54:30 2022
@@ -30,12 +30,13 @@ public class PrettyPrintNamespaceTest {
     public void testWithNewInstance()
             throws Exception {
         XmlObject x = XmlObject.Factory.newInstance();
-        XmlCursor c = x.newCursor();
 
-        c.toNextToken();
-        c.beginElement("a", "aaaa");
-        c.insertAttribute("a", "aaaa");
-        c.insertNamespace("", "aaaa");
+        try (XmlCursor c = x.newCursor()) {
+            c.toNextToken();
+            c.beginElement("a", "aaaa");
+            c.insertAttribute("a", "aaaa");
+            c.insertNamespace("", "aaaa");
+        }
 
         String str =
                 "<a aaaa:a=\"\" xmlns=\"aaaa\" xmlns:aaaa=\"aaaa\"/>";

Modified: 
xmlbeans/trunk/src/test/java/xmltokensource/detailed/RoundTripLoaderTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmltokensource/detailed/RoundTripLoaderTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- 
xmlbeans/trunk/src/test/java/xmltokensource/detailed/RoundTripLoaderTest.java 
(original)
+++ 
xmlbeans/trunk/src/test/java/xmltokensource/detailed/RoundTripLoaderTest.java 
Thu Jan  6 17:54:30 2022
@@ -26,7 +26,6 @@ import xmlcursor.common.BasicCursorTestC
 import xmlcursor.common.Common;
 
 import java.io.InputStream;
-import java.io.Reader;
 
 import static org.junit.Assert.assertNotNull;
 
@@ -47,11 +46,8 @@ public class RoundTripLoaderTest extends
         assertNotNull(doc);
         XmlObject xo = XmlObject.Factory.parse(doc, map);
         m_xc = m_xo.newCursor();
-        XmlCursor xc1 = xo.newCursor();
-        try {
+        try (XmlCursor xc1 = xo.newCursor()) {
             compareDocTokens(m_xc, xc1);
-        } finally {
-            xc1.dispose();
         }
     }
 
@@ -72,11 +68,8 @@ public class RoundTripLoaderTest extends
         XmlOptions options = new XmlOptions(map);
         XmlObject xo = XmlObject.Factory.parse(is, options);
         m_xc = m_xo.newCursor();
-        XmlCursor xc1 = xo.newCursor();
-        try {
+        try (XmlCursor xc1 = xo.newCursor()) {
             compareDocTokens(m_xc, xc1);
-        } finally {
-            xc1.dispose();
         }
     }
 
@@ -90,21 +83,6 @@ public class RoundTripLoaderTest extends
         _newInputStreamRoundTrip(m_map);
     }
 
-    private void _newReaderRoundTrip(XmlOptions map) throws Exception {
-        m_xo = XmlObject.Factory.parse(Common.XML_FOO_BAR_NESTED_SIBLINGS);
-        Reader reader = m_xo.newReader(map);
-        assertNotNull(reader);
-        XmlOptions options = new XmlOptions(map);
-        XmlObject xo = XmlObject.Factory.parse(reader, options);
-        m_xc = m_xo.newCursor();
-        XmlCursor xc1 = xo.newCursor();
-        try {
-            compareDocTokens(m_xc, xc1);
-        } finally {
-            xc1.dispose();
-        }
-    }
-
     private void _xmlTextRoundTrip(XmlOptions map) throws Exception {
         m_xo = XmlObject.Factory.parse(Common.XML_FOO_BAR_NESTED_SIBLINGS);
         String sXml = m_xo.xmlText(map);
@@ -112,11 +90,8 @@ public class RoundTripLoaderTest extends
         XmlOptions options = new XmlOptions(map);
         XmlObject xo = XmlObject.Factory.parse(sXml, options);
         m_xc = m_xo.newCursor();
-        XmlCursor xc1 = xo.newCursor();
-        try {
+        try (XmlCursor xc1 = xo.newCursor()) {
             compareDocTokens(m_xc, xc1);
-        } finally {
-            xc1.dispose();
         }
     }
 

Modified: xmlbeans/trunk/src/test/java/xmltokensource/detailed/XmlTextTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmltokensource/detailed/XmlTextTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmltokensource/detailed/XmlTextTest.java 
(original)
+++ xmlbeans/trunk/src/test/java/xmltokensource/detailed/XmlTextTest.java Thu 
Jan  6 17:54:30 2022
@@ -104,12 +104,9 @@ public class XmlTextTest extends BasicCu
         m_xo = XmlObject.Factory.parse(
             JarUtil.getResourceFromJar(Common.TRANXML_FILE_CLM));
         m_xc = m_xo.newCursor();
-        XmlCursor xc1 = m_xo.newCursor();
-        xc1.toFirstChild();
-        try {
+        try (XmlCursor xc1 = m_xo.newCursor()) {
+            xc1.toFirstChild();
             assertEquals(m_xc.xmlText().replaceFirst("(?s)<!--.*-->", ""), 
xc1.xmlText());
-        } finally {
-            xc1.dispose();
         }
     }
 



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to