class loading / xerces
----------------------
Key: MNG-1172
URL: http://jira.codehaus.org/browse/MNG-1172
Project: Maven 2
Type: Bug
Components: maven-surefire-plugin
Versions: 2.0-beta-3
Environment: maven-2-beta-3, jdk 5.0.0_4, winXP SP2
Reporter: Dirk Sturzebecher
I have two tests in one test class. Both read a csv file and check for certain
attributes. Both tests run ok outside maven. In maven the first test fails, the
second (ordered by execution sequence) is ok. That is, if I do understand the
output correctly. The output in surefire-reports is:
-------------------------------------------------------------------------------
Battery: de.dst.money.stock.StockPluginTest
-------------------------------------------------------------------------------
testDoImport01(de.dst.money.stock.StockPluginTest)
[ stdout ] ---------------------------------------------------------------
[ stderr ] ---------------------------------------------------------------
[ stacktrace ] -----------------------------------------------------------
javax.xml.parsers.FactoryConfigurationError: Provider
org.apache.xerces.jaxp.DocumentBuilderFactoryImpl not found
at
javax.xml.parsers.DocumentBuilderFactory.newInstance(DocumentBuilderFactory.java:145)
at
de.dst.money.framework.model.persistence.xml.XMLUtil.loadDocument(XMLUtil.java:64)
at
de.dst.money.framework.model.persistence.xml.XMLPersistenceManager.loadDocument(XMLPersistenceManager.java:82)
at de.dst.money.stock.StockPlugin.load(StockPlugin.java:97)
at de.dst.money.stock.StockPlugin.getModel(StockPlugin.java:87)
at
de.dst.money.stock.StockPluginTest.testDoImport01(StockPluginTest.java:35)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at junit.framework.TestCase.runTest(TestCase.java:154)
at junit.framework.TestCase.runBare(TestCase.java:127)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.codehaus.surefire.battery.JUnitBattery.executeJUnit(JUnitBattery.java:246)
at
org.codehaus.surefire.battery.JUnitBattery.execute(JUnitBattery.java:220)
at org.codehaus.surefire.Surefire.executeBattery(Surefire.java:203)
at org.codehaus.surefire.Surefire.run(Surefire.java:152)
at org.codehaus.surefire.Surefire.run(Surefire.java:76)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.codehaus.surefire.SurefireBooter.run(SurefireBooter.java:104)
at org.apache.maven.test.SurefirePlugin.execute(SurefirePlugin.java:229)
at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:417)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:554)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:508)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:494)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:307)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:149)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:217)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:247)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
testDoImport02(de.dst.money.stock.StockPluginTest)
Is it a classloader issue? Why does it try to get xerces? I checked if I can
configure jdk 1.5 for the tests, but did not find an option. But as the code
contains generics it should be using the 1.5 jdk anyway...
Or is it a problem with some jaxp.properties loaded by maven? Does maven use
xerces? If so, the problem might go away if the test would be forked. But that
can't be done in beta 3, correct?
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]