Description of problem: When I deploy the jboss-brms-repository into BRMS(ER6), I switch to the server startup console, I can see the following error thrown. The quickstart can still run succesfully though. 14:41:53,433 ERROR [org.kie.scanner.MavenClassLoaderResolver] (EJB default - 6) Dependency artifact not found for: org.jboss.quickstarts.brms:helloworld-brms-kmodule:1.0.0 14:41:53,560 ERROR [stderr] (EJB default - 6) java.lang.ClassNotFoundException: Unable to find class 'org.jboss.quickstarts.brms.Salesman' 14:41:53,560 ERROR [stderr] (EJB default - 6) at org.drools.core.base.ClassTypeResolver.resolveType(ClassTypeResolver.java:231) 14:41:53,560 ERROR [stderr] (EJB default - 6) at org.drools.core.base.ClassTypeResolver.resolveType(ClassTypeResolver.java:122) 14:41:53,561 ERROR [stderr] (EJB default - 6) at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.processGlobals(KnowledgeBuilderImpl.java:1539) 14:41:53,561 ERROR [stderr] (EJB default - 6) at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.processOtherDeclarations(KnowledgeBuilderImpl.java:1516) 14:41:53,561 ERROR [stderr] (EJB default - 6) at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.buildOtherDeclarations(CompositeKnowledgeBuilderImpl.java:292) 14:41:53,561 ERROR [stderr] (EJB default - 6) at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.buildPackages(CompositeKnowledgeBuilderImpl.java:105) 14:41:53,561 ERROR [stderr] (EJB default - 6) at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:91) 14:41:53,562 ERROR [stderr] (EJB default - 6) at org.drools.compiler.kie.builder.impl.AbstractKieModule.buildKnowledgePackages(AbstractKieModule.java:223) 14:41:53,562 ERROR [stderr] (EJB default - 6) at org.drools.compiler.kie.builder.impl.AbstractKieProject.verify(AbstractKieProject.java:49) 14:41:53,562 ERROR [stderr] (EJB default - 6) at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildKieProject(KieBuilderImpl.java:212) 14:41:53,562 ERROR [stderr] (EJB default - 6) at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:183) 14:41:53,563 ERROR [stderr] (EJB default - 6) at org.kie.workbench.common.services.backend.builder.Builder.build(Builder.java:132) 14:41:53,563 ERROR [stderr] (EJB default - 6) at org.kie.workbench.common.services.backend.builder.Builder.getKieModuleIgnoringErrors(Builder.java:454) 14:41:53,563 ERROR [stderr] (EJB default - 6) at org.kie.workbench.common.screens.datamodeller.backend.server.indexing.JavaFileIndexer.getProjectClassLoader(JavaFileIndexer.java:256) 14:41:53,563 ERROR [stderr] (EJB default - 6) at org.kie.workbench.common.screens.datamodeller.backend.server.indexing.JavaFileIndexer.toKObject(JavaFileIndexer.java:154) 14:41:53,563 ERROR [stderr] (EJB default - 6) at org.kie.workbench.common.screens.datamodeller.backend.server.indexing.JavaFileIndexer$Proxy$_$$_WeldClientProxy.toKObject(JavaFileIndexer$Proxy$_$$_WeldClientProxy.java) 14:41:53,564 ERROR [stderr] (EJB default - 6) at org.uberfire.ext.metadata.io.BatchIndex$3.visitFile(BatchIndex.java:171) 14:41:53,564 ERROR [stderr] (EJB default - 6) at org.uberfire.ext.metadata.io.BatchIndex$3.visitFile(BatchIndex.java:140) 14:41:53,564 ERROR [stderr] (EJB default - 6) at org.uberfire.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:63) 14:41:53,564 ERROR [stderr] (EJB default - 6) at org.uberfire.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:85) 14:41:53,565 ERROR [stderr] (EJB default - 6) at org.uberfire.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:85) 14:41:53,565 ERROR [stderr] (EJB default - 6) at org.uberfire.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:85) 14:41:53,565 ERROR [stderr] (EJB default - 6) at org.uberfire.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:85) 14:41:53,565 ERROR [stderr] (EJB default - 6) at org.uberfire.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:85) 14:41:53,566 ERROR [stderr] (EJB default - 6) at org.uberfire.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:85) 14:41:53,566 ERROR [stderr] (EJB default - 6) at org.uberfire.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:85) 14:41:53,566 ERROR [stderr] (EJB default - 6) at org.uberfire.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:85) 14:41:53,566 ERROR [stderr] (EJB default - 6) at org.uberfire.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:85) 14:41:53,566 ERROR [stderr] (EJB default - 6) at org.uberfire.java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:44) 14:41:53,567 ERROR [stderr] (EJB default - 6) at org.uberfire.java.nio.file.Files.walkFileTree(Files.java:911) 14:41:53,567 ERROR [stderr] (EJB default - 6) at org.uberfire.java.nio.file.Files.walkFileTree(Files.java:930) 14:41:53,567 ERROR [stderr] (EJB default - 6) at org.uberfire.ext.metadata.io.BatchIndex.run(BatchIndex.java:138) 14:41:53,567 ERROR [stderr] (EJB default - 6) at org.uberfire.ext.metadata.io.BatchIndex.run(BatchIndex.java:123) 14:41:53,567 ERROR [stderr] (EJB default - 6) at org.uberfire.ext.metadata.io.BatchIndex$1.run(BatchIndex.java:94) 14:41:53,567 ERROR [stderr] (EJB default - 6) at org.uberfire.commons.async.SimpleAsyncExecutorService.execute(SimpleAsyncExecutorService.java:100) 14:41:53,568 ERROR [stderr] (EJB default - 6) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 14:41:53,568 ERROR [stderr] (EJB default - 6) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 14:41:53,568 ERROR [stderr] (EJB default - 6) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 14:41:53,568 ERROR [stderr] (EJB default - 6) at java.lang.reflect.Method.invoke(Method.java:601) 14:41:53,569 ERROR [stderr] (EJB default - 6) at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52) 14:41:53,569 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,569 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.WeavedInterceptor.processInvocation(WeavedInterceptor.java:53) 14:41:53,569 ERROR [stderr] (EJB default - 6) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63) 14:41:53,569 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,569 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:374) 14:41:53,570 ERROR [stderr] (EJB default - 6) at org.jboss.as.weld.ejb.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:86) 14:41:53,570 ERROR [stderr] (EJB default - 6) at org.jboss.as.weld.ejb.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:97) 14:41:53,570 ERROR [stderr] (EJB default - 6) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63) 14:41:53,570 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,570 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.WeavedInterceptor.processInvocation(WeavedInterceptor.java:53) 14:41:53,571 ERROR [stderr] (EJB default - 6) at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63) 14:41:53,571 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,571 ERROR [stderr] (EJB default - 6) at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43) 14:41:53,571 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,571 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:374) 14:41:53,572 ERROR [stderr] (EJB default - 6) at org.jboss.as.ejb3.concurrency.ContainerManagedConcurrencyInterceptor.processInvocation(ContainerManagedConcurrencyInterceptor.java:104) 14:41:53,572 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,572 ERROR [stderr] (EJB default - 6) at org.jboss.as.weld.ejb.EjbRequestScopeActivationInterceptor.processInvocation(EjbRequestScopeActivationInterceptor.java:93) 14:41:53,572 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,572 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:21) 14:41:53,573 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,573 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) 14:41:53,573 ERROR [stderr] (EJB default - 6) at org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:53) 14:41:53,573 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,574 ERROR [stderr] (EJB default - 6) at org.jboss.as.ejb3.component.singleton.SingletonComponentInstanceAssociationInterceptor.processInvocation(SingletonComponentInstanceAssociationInterceptor.java:52) 14:41:53,574 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,574 ERROR [stderr] (EJB default - 6) at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInNoTx(CMTTxInterceptor.java:267) 14:41:53,574 ERROR [stderr] (EJB default - 6) at org.jboss.as.ejb3.tx.CMTTxInterceptor.notSupported(CMTTxInterceptor.java:331) 14:41:53,574 ERROR [stderr] (EJB default - 6) at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:241) 14:41:53,574 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,575 ERROR [stderr] (EJB default - 6) at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41) 14:41:53,575 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,575 ERROR [stderr] (EJB default - 6) at org.jboss.as.ejb3.component.invocationmetrics.WaitTimeInterceptor.processInvocation(WaitTimeInterceptor.java:43) 14:41:53,575 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,575 ERROR [stderr] (EJB default - 6) at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:64) 14:41:53,576 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,576 ERROR [stderr] (EJB default - 6) at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:59) 14:41:53,576 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,576 ERROR [stderr] (EJB default - 6) at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50) 14:41:53,576 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,576 ERROR [stderr] (EJB default - 6) at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:55) 14:41:53,577 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,577 ERROR [stderr] (EJB default - 6) at org.jboss.as.ee.component.TCCLInterceptor.processInvocation(TCCLInterceptor.java:45) 14:41:53,577 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,577 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) 14:41:53,577 ERROR [stderr] (EJB default - 6) at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:185) 14:41:53,578 ERROR [stderr] (EJB default - 6) at org.jboss.as.ee.component.ViewDescription$1.processInvocation(ViewDescription.java:182) 14:41:53,578 ERROR [stderr] (EJB default - 6) at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) 14:41:53,578 ERROR [stderr] (EJB default - 6) at org.jboss.as.ejb3.component.interceptors.AsyncFutureInterceptorFactory$1$1.runInvocation(AsyncFutureInterceptorFactory.java:89) 14:41:53,578 ERROR [stderr] (EJB default - 6) at org.jboss.as.ejb3.component.interceptors.AsyncInvocationTask.run(AsyncInvocationTask.java:73) 14:41:53,578 ERROR [stderr] (EJB default - 6) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 14:41:53,579 ERROR [stderr] (EJB default - 6) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 14:41:53,579 ERROR [stderr] (EJB default - 6) at java.lang.Thread.run(Thread.java:722) 14:41:53,579 ERROR [stderr] (EJB default - 6) at org.jboss.threads.JBossThread.run(JBossThread.java:122) 14:41:53,667 ERROR [org.drools.compiler.kie.builder.impl.AbstractKieModule] (EJB default - 6) Unable to build KieBaseModel:storeKBase GlobalError: $salesman : Unable to find class 'org.jboss.quickstarts.brms.Salesman' Unable to Analyse Expression $salesman.getAllSales().add($sale); System.out.println("sale registered to salesmen");: [Error: unable to resolve method using strict-mode: org.drools.core.spi.KnowledgeHelper.$salesman()] [Near : {... $salesman.getAllSales().add($s ....}] ^ [Line: 3, Column: 0] : [Rule name='registerSale'] Version-Release number of selected component (if applicable): How reproducible: Start BPMS and broswer business-central page. Clone the repo via the business-central UI. And switch to terminal console and wait a few seconds, the error will be thrown out. Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
Ryan, I can not reproduce the issue with BPM Suite Business Central ER6 on EAP 6.4.0.ER3. This is the output of the server, everything looks fine: 10:46:13,772 INFO [org.drools.compiler.kie.builder.impl.KieRepositoryImpl] (http-localhost.localdomain/127.0.0.1:8080-1) KieModule was added: MemoryKieModule[releaseId=org.jboss.quickstarts.brms:decision-table-kmodule:1.0.0] 10:46:14,272 INFO [org.apache.deltaspike.core.util.ProjectStageProducer] (EJB default - 1) Computed the following DeltaSpike ProjectStage: Production 10:46:15,426 INFO [org.drools.compiler.kie.builder.impl.KieRepositoryImpl] (EJB default - 1) KieModule was added: MemoryKieModule[releaseId=org.jboss.quickstarts.brms:bpms_project:1.0.0] 10:46:18,304 INFO [org.drools.compiler.kie.builder.impl.KieRepositoryImpl] (EJB default - 1) KieModule was added: MemoryKieModule[releaseId=org.jboss.quickstarts.brms:helloworld-brms-kmodule:1.0.0] 10:46:21,447 INFO [org.drools.compiler.kie.builder.impl.KieRepositoryImpl] (EJB default - 1) KieModule was added: MemoryKieModule[releaseId=org.jboss.quickstarts.brms:my-store-brms-kmodule:1.0.0] 10:46:21,448 INFO [org.drools.compiler.kie.builder.impl.KieRepositoryImpl] (EJB default - 1) KieModule was added: MemoryKieModule[releaseId=org.jboss.quickstarts.brms:helloworld-brms-kmodule:1.0.0] 10:46:22,724 INFO [org.uberfire.ext.metadata.io.BatchIndex] (EJB default - 1) Completed indexing of default://master@qs/ Could you provide some additional info on how to reproduce this?
Created attachment 999829 [details] server.log
I also can not reproduce the issue. I tried it on BPMS ER3 and ER2.
Sorry. I tried it with BPMS ER6 on EAP 6.4.0.ER3 and EAP 6.4.0.ER2.
The issue _seems_ to be related to the fact that the projects in the quickstarts repo have inter dependencies. For example decision-table-kmodule depends on helloworld-brms-kmodule. In case the decision-table-kmodule is built first (which it is) then it will fail, because its dependency (helloworld-brms-kmodule) was not yet built. The reason why this was passing for me was that I had the helloworld-brms-kmodule built from previous runs, so the BC was able to pick it up from local Maven repo (~/.m2). I am not really sure what we can do here. One solution would be to make the Business Central smart enough to figure out the inter dependencies and then build the projects in correct order.
I created new BZ about the build order issues for BC: https://bugzilla.redhat.com/show_bug.cgi?id=1200413 I think that is currently the only correct way to solve this issue.
(In reply to Tomas David from comment #5) > Sorry. I tried it with BPMS ER6 on EAP 6.4.0.ER3 and EAP 6.4.0.ER2. (In reply to Petr Siroky from comment #6) > The issue _seems_ to be related to the fact that the projects in the > quickstarts repo have inter dependencies. For example decision-table-kmodule > depends on helloworld-brms-kmodule. In case the decision-table-kmodule is > built first (which it is) then it will fail, because its dependency > (helloworld-brms-kmodule) was not yet built. The reason why this was passing > for me was that I had the helloworld-brms-kmodule built from previous runs, > so the BC was able to pick it up from local Maven repo (~/.m2). > > I am not really sure what we can do here. > > One solution would be to make the Business Central smart enough to figure > out the inter dependencies and then build the projects in correct order. (In reply to Tomas David from comment #5) > Sorry. I tried it with BPMS ER6 on EAP 6.4.0.ER3 and EAP 6.4.0.ER2. As Petr stated, this issue needs to clean the quickstarts jar in local repo first which is located in ${local-repo}/org/jboss/quickstarts/brms/*.
(In reply to Petr Siroky from comment #6) > The issue _seems_ to be related to the fact that the projects in the > quickstarts repo have inter dependencies. For example decision-table-kmodule > depends on helloworld-brms-kmodule. In case the decision-table-kmodule is > built first (which it is) then it will fail, because its dependency > (helloworld-brms-kmodule) was not yet built. The reason why this was passing > for me was that I had the helloworld-brms-kmodule built from previous runs, > so the BC was able to pick it up from local Maven repo (~/.m2). > > I am not really sure what we can do here. > > One solution would be to make the Business Central smart enough to figure > out the inter dependencies and then build the projects in correct order. (In reply to Petr Siroky from comment #7) > I created new BZ about the build order issues for BC: > https://bugzilla.redhat.com/show_bug.cgi?id=1200413 > > I think that is currently the only correct way to solve this issue. OK, Thanks for your analyses. I put it in depends on.
The actual reason for the error is slightly different from the one I described in comment #6. The build order is OK. However, after cloning the repo, BC will start indexing + building the projects (internally as they won't appear in ~/.m2 nor in bin/repositories/). One of the modules depends on another which is not available. The build then fails. This is the root cause, the CNFE seen later are caused by this. I am looking if we can fix this somehow quickly and without big changes.