Bug 1043497 - Drools requires Maven repository configuration even if repo resources are not used
Summary: Drools requires Maven repository configuration even if repo resources are not...
Keywords:
Status: ON_QA
Alias: None
Product: JBoss Fuse Service Works 6
Classification: JBoss
Component: Rules / jBPM integration
Version: 6.0.0
Hardware: Unspecified
OS: Unspecified
unspecified
urgent
Target Milestone: DR1
: 6.1.0
Assignee: Rob Cernich
QA Contact: Matej Melko
URL:
Whiteboard:
Depends On: 1045424
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-12-16 13:28 UTC by Jiri Pechanec
Modified: 2021-11-08 10:23 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: Bug


Attachments (Terms of Use)

Description Jiri Pechanec 2013-12-16 13:28:31 UTC
See a message during deployment of bpm-service in the server log
09:34:01,182 WARN  [org.kie.scanner.embedder.MavenSettings] (MSC service thread 1-4) Environment variable M2_HOME is not set

Also tests are not working for this QS when custom settings.xml is in place - all tests are failing

Comment 2 Jiri Pechanec 2013-12-16 15:33:22 UTC
-------------------------------------------------------------------------------
Test set: org.switchyard.quickstarts.bpm.service.ProcessOrderTest
-------------------------------------------------------------------------------
Tests run: 2, Failures: 0, Errors: 2, Skipped: 0, Time elapsed: 3.743 sec <<< FAILURE!
orderShipped(org.switchyard.quickstarts.bpm.service.ProcessOrderTest)  Time elapsed: 4 sec  <<< ERROR!
java.lang.Exception: java.lang.ExceptionInInitializerError
	at org.switchyard.test.SwitchYardRunner.createTest(SwitchYardRunner.java:64)
	at org.junit.runners.BlockJUnit4ClassRunner$1.runReflectiveCall(BlockJUnit4ClassRunner.java:244)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:241)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
	at org.switchyard.test.SwitchYardRunner.run(SwitchYardRunner.java:85)
	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
	at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
	at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Caused by: java.lang.ExceptionInInitializerError
	at org.kie.scanner.embedder.MavenProjectLoader.loadMavenProject(MavenProjectLoader.java:53)
	at org.kie.scanner.Aether.<init>(Aether.java:44)
	at org.kie.scanner.Aether.<clinit>(Aether.java:35)
	at org.kie.scanner.MavenRepository.<clinit>(MavenRepository.java:30)
	at org.kie.scanner.ArtifactResolver.getMavenProjectForGAV(ArtifactResolver.java:78)
	at org.kie.scanner.ArtifactResolver.getResolverFor(ArtifactResolver.java:56)
	at org.kie.scanner.MavenClassLoaderResolver.getClassLoader(MavenClassLoaderResolver.java:48)
	at org.drools.compiler.kie.builder.impl.KieModuleKieProject.<init>(KieModuleKieProject.java:50)
	at org.drools.compiler.kie.builder.impl.KieModuleKieProject.<init>(KieModuleKieProject.java:38)
	at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:184)
	at org.switchyard.component.common.knowledge.session.KnowledgeBuilderSessionFactory.newBase(KnowledgeBuilderSessionFactory.java:125)
	at org.switchyard.component.common.knowledge.session.KnowledgeBuilderSessionFactory.<init>(KnowledgeBuilderSessionFactory.java:71)
	at org.switchyard.component.common.knowledge.session.KnowledgeSessionFactory.newSessionFactory(KnowledgeSessionFactory.java:117)
	at org.switchyard.component.common.knowledge.exchange.KnowledgeExchangeHandler.doStart(KnowledgeExchangeHandler.java:204)
	at org.switchyard.component.bpm.exchange.BPMExchangeHandler.doStart(BPMExchangeHandler.java:108)
	at org.switchyard.deploy.BaseServiceHandler.start(BaseServiceHandler.java:60)
	at org.switchyard.deploy.internal.Deployment.deployImplementations(Deployment.java:574)
	at org.switchyard.deploy.internal.Deployment.start(Deployment.java:144)
	at org.switchyard.test.SwitchYardTestKit.deploy(SwitchYardTestKit.java:757)
	at org.switchyard.test.SwitchYardTestKit.start(SwitchYardTestKit.java:177)
	at org.switchyard.test.SwitchYardRunner.createTest(SwitchYardRunner.java:60)
	... 24 more
Caused by: java.lang.RuntimeException: org.apache.maven.project.ProjectBuildingException: Some problems were encountered while processing the POMs:
[FATAL] Non-resolvable parent POM for org.switchyard.quickstarts:switchyard-quickstart-parent:1.1.1-p2-redhat-1: Failure to find org.switchyard:switchyard-parent:pom:1.1.1-p2-redhat-1 in http://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced and 'parent.relativePath' points at wrong local POM @ org.switchyard.quickstarts:switchyard-quickstart-parent:1.1.1-p2-redhat-1, /home/jpechane/releases/er7/qs/jboss-eap-6.1/quickstarts/switchyard/pom.xml, line 17, column 13

	at org.kie.scanner.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:28)
	at org.kie.scanner.embedder.MavenProjectLoader$MavenProjectHolder.loadMavenProject(MavenProjectLoader.java:14)
	at org.kie.scanner.embedder.MavenProjectLoader$MavenProjectHolder.<clinit>(MavenProjectLoader.java:10)
	... 45 more
Caused by: org.apache.maven.project.ProjectBuildingException: Some problems were encountered while processing the POMs:
[FATAL] Non-resolvable parent POM for org.switchyard.quickstarts:switchyard-quickstart-parent:1.1.1-p2-redhat-1: Failure to find org.switchyard:switchyard-parent:pom:1.1.1-p2-redhat-1 in http://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced and 'parent.relativePath' points at wrong local POM @ org.switchyard.quickstarts:switchyard-quickstart-parent:1.1.1-p2-redhat-1, /home/jpechane/releases/er7/qs/jboss-eap-6.1/quickstarts/switchyard/pom.xml, line 17, column 13

	at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:363)
	at org.kie.scanner.embedder.MavenEmbedder.buildProjects(MavenEmbedder.java:370)
	at org.kie.scanner.embedder.MavenEmbedder.readProjects(MavenEmbedder.java:354)
	at org.kie.scanner.embedder.MavenEmbedder.readProject(MavenEmbedder.java:347)
	at org.kie.scanner.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:26)
	... 47 more

orderOnHold(org.switchyard.quickstarts.bpm.service.ProcessOrderTest)  Time elapsed: 2 sec  <<< ERROR!
java.lang.Exception: java.lang.NoClassDefFoundError: Could not initialize class org.kie.scanner.MavenRepository
	at org.switchyard.test.SwitchYardRunner.createTest(SwitchYardRunner.java:64)
	at org.junit.runners.BlockJUnit4ClassRunner$1.runReflectiveCall(BlockJUnit4ClassRunner.java:244)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:241)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
	at org.switchyard.test.SwitchYardRunner.run(SwitchYardRunner.java:85)
	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
	at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
	at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.kie.scanner.MavenRepository
	at org.kie.scanner.ArtifactResolver.getMavenProjectForGAV(ArtifactResolver.java:78)
	at org.kie.scanner.ArtifactResolver.getResolverFor(ArtifactResolver.java:56)
	at org.kie.scanner.MavenClassLoaderResolver.getClassLoader(MavenClassLoaderResolver.java:48)
	at org.drools.compiler.kie.builder.impl.KieModuleKieProject.<init>(KieModuleKieProject.java:50)
	at org.drools.compiler.kie.builder.impl.KieModuleKieProject.<init>(KieModuleKieProject.java:38)
	at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:184)
	at org.switchyard.component.common.knowledge.session.KnowledgeBuilderSessionFactory.newBase(KnowledgeBuilderSessionFactory.java:125)
	at org.switchyard.component.common.knowledge.session.KnowledgeBuilderSessionFactory.<init>(KnowledgeBuilderSessionFactory.java:71)
	at org.switchyard.component.common.knowledge.session.KnowledgeSessionFactory.newSessionFactory(KnowledgeSessionFactory.java:117)
	at org.switchyard.component.common.knowledge.exchange.KnowledgeExchangeHandler.doStart(KnowledgeExchangeHandler.java:204)
	at org.switchyard.component.bpm.exchange.BPMExchangeHandler.doStart(BPMExchangeHandler.java:108)
	at org.switchyard.deploy.BaseServiceHandler.start(BaseServiceHandler.java:60)
	at org.switchyard.deploy.internal.Deployment.deployImplementations(Deployment.java:574)
	at org.switchyard.deploy.internal.Deployment.start(Deployment.java:144)
	at org.switchyard.test.SwitchYardTestKit.deploy(SwitchYardTestKit.java:757)
	at org.switchyard.test.SwitchYardTestKit.start(SwitchYardTestKit.java:177)
	at org.switchyard.test.SwitchYardRunner.createTest(SwitchYardRunner.java:60)
	... 24 more


-------------------------------------------------------------------------------
Test set: org.switchyard.quickstarts.bpm.service.WebServiceTest
-------------------------------------------------------------------------------
Tests run: 2, Failures: 0, Errors: 2, Skipped: 0, Time elapsed: 1.348 sec <<< FAILURE!
webServiceShipped(org.switchyard.quickstarts.bpm.service.WebServiceTest)  Time elapsed: 1 sec  <<< ERROR!
java.lang.Exception: java.lang.NoClassDefFoundError: Could not initialize class org.kie.scanner.MavenRepository
	at org.switchyard.test.SwitchYardRunner.createTest(SwitchYardRunner.java:64)
	at org.junit.runners.BlockJUnit4ClassRunner$1.runReflectiveCall(BlockJUnit4ClassRunner.java:244)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:241)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
	at org.switchyard.test.SwitchYardRunner.run(SwitchYardRunner.java:85)
	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
	at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
	at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.kie.scanner.MavenRepository
	at org.kie.scanner.ArtifactResolver.getMavenProjectForGAV(ArtifactResolver.java:78)
	at org.kie.scanner.ArtifactResolver.getResolverFor(ArtifactResolver.java:56)
	at org.kie.scanner.MavenClassLoaderResolver.getClassLoader(MavenClassLoaderResolver.java:48)
	at org.drools.compiler.kie.builder.impl.KieModuleKieProject.<init>(KieModuleKieProject.java:50)
	at org.drools.compiler.kie.builder.impl.KieModuleKieProject.<init>(KieModuleKieProject.java:38)
	at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:184)
	at org.switchyard.component.common.knowledge.session.KnowledgeBuilderSessionFactory.newBase(KnowledgeBuilderSessionFactory.java:125)
	at org.switchyard.component.common.knowledge.session.KnowledgeBuilderSessionFactory.<init>(KnowledgeBuilderSessionFactory.java:71)
	at org.switchyard.component.common.knowledge.session.KnowledgeSessionFactory.newSessionFactory(KnowledgeSessionFactory.java:117)
	at org.switchyard.component.common.knowledge.exchange.KnowledgeExchangeHandler.doStart(KnowledgeExchangeHandler.java:204)
	at org.switchyard.component.bpm.exchange.BPMExchangeHandler.doStart(BPMExchangeHandler.java:108)
	at org.switchyard.deploy.BaseServiceHandler.start(BaseServiceHandler.java:60)
	at org.switchyard.deploy.internal.Deployment.deployImplementations(Deployment.java:574)
	at org.switchyard.deploy.internal.Deployment.start(Deployment.java:144)
	at org.switchyard.test.SwitchYardTestKit.deploy(SwitchYardTestKit.java:757)
	at org.switchyard.test.SwitchYardTestKit.start(SwitchYardTestKit.java:177)
	at org.switchyard.test.SwitchYardRunner.createTest(SwitchYardRunner.java:60)
	... 24 more

Test mechanism  Time elapsed: 3 sec  <<< ERROR!
java.lang.IllegalStateException: Connection manager has been shut down
	at org.apache.http.impl.conn.BasicClientConnectionManager.assertNotShutdown(BasicClientConnectionManager.java:147)
	at org.apache.http.impl.conn.BasicClientConnectionManager.closeIdleConnections(BasicClientConnectionManager.java:247)
	at org.switchyard.component.test.mixins.http.HTTPMixIn.uninitialize(HTTPMixIn.java:458)
	at org.switchyard.test.SwitchYardTestKit.cleanupMixIns(SwitchYardTestKit.java:810)
	at org.switchyard.test.SwitchYardTestKit.cleanup(SwitchYardTestKit.java:186)
	at org.switchyard.test.SwitchYardRunner$TestLifecycleListener.testFinished(SwitchYardRunner.java:95)
	at org.junit.runner.notification.RunNotifier$7.notifyListener(RunNotifier.java:191)
	at org.junit.runner.notification.RunNotifier$SafeNotifier.run(RunNotifier.java:61)
	at org.junit.runner.notification.RunNotifier.fireTestFinished(RunNotifier.java:188)
	at org.junit.internal.runners.model.EachTestNotifier.fireTestFinished(EachTestNotifier.java:39)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:277)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
	at org.switchyard.test.SwitchYardRunner.run(SwitchYardRunner.java:85)
	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
	at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
	at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)

Comment 3 kconner 2013-12-19 01:53:17 UTC
The M2_HOME warning does not appear to impact anything, it is part of the discovery and consummation of the user's settings.xml file.

    String mavenHome = System.getenv("M2_HOME");
    if (mavenHome != null) {
      File globalSettingsFile = new File(mavenHome + "/conf/settings.xml");
      if (globalSettingsFile.exists())
        request.setGlobalSettingsFile(globalSettingsFile);
    }
    else {
      log.warn("Environment variable M2_HOME is not set");
    }

The QSes work correctly in the community project so this may be another symptom of the BRMS/BPMS modularisation.  I will retest when we get the ER8 build.

Comment 4 kconner 2013-12-19 15:21:41 UTC
There are still failures under ER8, will investigate.

Comment 5 Keith Babo 2013-12-20 14:37:06 UTC
I will look at this today.

Comment 6 Keith Babo 2013-12-20 20:01:27 UTC
There's not much we can do about that WARN message within SwitchYard.  The failure is due to the fact that Drools cannot resolve the switchyard-parent POM

[FATAL] Non-resolvable parent POM for org.switchyard.quickstarts:switchyard-quickstart-parent:1.1.1-p2-redhat-1: Failure to find org.switchyard:switchyard-parent:pom:1.1.1-p2-redhat-1 


See the following BZ for more details:
https://bugzilla.redhat.com/show_bug.cgi?id=1045424


Note You need to log in before you can comment on or make changes to this bug.