2015-02-05 21:12 GMT+03:00  <kkoli...@apache.org>:
> Author: kkolinko
> Date: Thu Feb  5 18:12:31 2015
> New Revision: 1657653
>
> URL: http://svn.apache.org/r1657653
> Log:
> Fix compilation failure in a test class when using JDK 1.5.
> The XPathFactory.newInstance(String, String, ClassLoader) method is @since 
> Java 1.6.
>
> From code review, the only difference between old and new methods is presence 
> of the second argument, 
> "com.sun.org.apache.xpath.internal.jaxp.XPathFactoryImpl". The null class 
> loader is interpreted as TCCL by both methods, so there is no difference.
> This test is @Ignore'd so it is not really tested.
>
> Modified:
>     
> tomcat/taglibs/standard/trunk/impl/src/test/java/org/apache/taglibs/standard/tag/common/xml/ForEachTagTest.java
>     tomcat/taglibs/standard/trunk/pom.xml
>
> Modified: 
> tomcat/taglibs/standard/trunk/impl/src/test/java/org/apache/taglibs/standard/tag/common/xml/ForEachTagTest.java
> URL: 
> http://svn.apache.org/viewvc/tomcat/taglibs/standard/trunk/impl/src/test/java/org/apache/taglibs/standard/tag/common/xml/ForEachTagTest.java?rev=1657653&r1=1657652&r2=1657653&view=diff
> ==============================================================================
> --- 
> tomcat/taglibs/standard/trunk/impl/src/test/java/org/apache/taglibs/standard/tag/common/xml/ForEachTagTest.java
>  (original)
> +++ 
> tomcat/taglibs/standard/trunk/impl/src/test/java/org/apache/taglibs/standard/tag/common/xml/ForEachTagTest.java
>  Thu Feb  5 18:12:31 2015
> @@ -218,7 +218,8 @@ public class ForEachTagTest {
>                  return doc;
>              }
>          };
> -        XPathFactory factory = 
> XPathFactory.newInstance(XPathFactory.DEFAULT_OBJECT_MODEL_URI, 
> "com.sun.org.apache.xpath.internal.jaxp.XPathFactoryImpl", null);
> +        // XPathFactory factory = 
> XPathFactory.newInstance(XPathFactory.DEFAULT_OBJECT_MODEL_URI, 
> "com.sun.org.apache.xpath.internal.jaxp.XPathFactoryImpl", null);
> +        XPathFactory factory = 
> XPathFactory.newInstance(XPathFactory.DEFAULT_OBJECT_MODEL_URI);
>          System.out.println("factory.getClass() = " + factory.getClass());
>          factory.setXPathVariableResolver(resolver);
>          XPathExpression select = factory.newXPath().compile("$doc/root/a");


For a record,
if I enable the xpathPerformance test (by removing @Ignore annotation)
and run "mvn install" with JDK 1.6,

using 1-argument version of XPathFactory.newInstance() results in printing
[[[
Running org.apache.taglibs.standard.tag.common.xml.ForEachTagTest
factory.getClass() = class org.apache.xpath.jaxp.XPathFactoryImpl
]]]

using 3-arguments version of XPathFactory.newInstance() results in printing
[[[
Running org.apache.taglibs.standard.tag.common.xml.ForEachTagTest
factory.getClass() = class com.sun.org.apache.xpath.internal.jaxp.XPathFactoryIm
pl
]]]

So there is a difference.
At the same time, in both cases the test does not complete after
running for 1 hour. I had to abort the tests and kill java process
forked by maven/junit. So here is no difference.

A comment for @Ignore is "Takes > 20s to run", so I was prepared to
wait, but an hour is more than I expected from that comment.

Maybe reducing the size of a sample document
("newBenchmarkDocument(200000)") will help.

This is not my priority for now. I just run it as I wanted to verify
whether my code change mattered.


Best regards,
Konstantin Kolinko

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to