[JBoss JIRA] (DROOLS-3066) NPE in Drools org.drools.core.rule.SingleAccumulate.reverse(SingleAccumulate.java:124)
by Luca Molteni (Jira)
[ https://issues.jboss.org/browse/DROOLS-3066?page=com.atlassian.jira.plugi... ]
Luca Molteni updated DROOLS-3066:
---------------------------------
Sprint: 2019 Week 29-31
> NPE in Drools org.drools.core.rule.SingleAccumulate.reverse(SingleAccumulate.java:124)
> ---------------------------------------------------------------------------------------
>
> Key: DROOLS-3066
> URL: https://issues.jboss.org/browse/DROOLS-3066
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 7.4.1.Final
> Environment: Windows 7
> Oracle Java Development Kit 1.8.0_111
> Eclipse Oxygen 3a
> Optaplanner 7.4.1.Final
> Reporter: Philip Harding
> Assignee: Luca Molteni
> Priority: Major
> Attachments: NPE_Drools_MWE.zip
>
> Original Estimate: 2 days
> Remaining Estimate: 2 days
>
> The rule
> {code:java}
> rule "globalRequiredPredecessorAfterMe"
> when
> $rpAll: Set(size>1) from accumulate (
> Customer(Domicile != null, $rpAfterMe: requiredPredecessorsAfterMe);
> collectSet($rpAfterMe)
> )
> then
> scoreHolder.addMediumConstraintMatch(kcontext, - $rpAll.size()-1);
> end
> {code}
> gives following NPE within the attached Optaplanner model:
> {code:java}
> Exception in thread "main" java.lang.RuntimeException: java.lang.NullPointerException
> at org.drools.core.rule.SingleAccumulate.reverse(SingleAccumulate.java:124)
> at org.drools.core.phreak.PhreakAccumulateNode.removeMatch(PhreakAccumulateNode.java:796)
> at org.drools.core.phreak.PhreakAccumulateNode.doRightUpdatesProcessChildren(PhreakAccumulateNode.java:517)
> at org.drools.core.phreak.PhreakAccumulateNode.doRightUpdates(PhreakAccumulateNode.java:450)
> at org.drools.core.phreak.PhreakAccumulateNode.doNode(PhreakAccumulateNode.java:76)
> at org.drools.core.phreak.RuleNetworkEvaluator.switchOnDoBetaNode(RuleNetworkEvaluator.java:581)
> at org.drools.core.phreak.RuleNetworkEvaluator.evalBetaNode(RuleNetworkEvaluator.java:552)
> at org.drools.core.phreak.RuleNetworkEvaluator.evalNode(RuleNetworkEvaluator.java:379)
> at org.drools.core.phreak.RuleNetworkEvaluator.innerEval(RuleNetworkEvaluator.java:339)
> at org.drools.core.phreak.RuleNetworkEvaluator.outerEval(RuleNetworkEvaluator.java:175)
> at org.drools.core.phreak.RuleNetworkEvaluator.evaluateNetwork(RuleNetworkEvaluator.java:133)
> at org.drools.core.phreak.RuleExecutor.reEvaluateNetwork(RuleExecutor.java:212)
> at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:87)
> at org.drools.core.concurrent.AbstractRuleEvaluator.internalEvaluateAndFire(AbstractRuleEvaluator.java:34)
> at org.drools.core.concurrent.SequentialRuleEvaluator.evaluateAndFire(SequentialRuleEvaluator.java:43)
> at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1067)
> at org.drools.core.common.DefaultAgenda.internalFireAllRules(DefaultAgenda.java:1014)
> at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1006)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1337)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1328)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1312)
> at org.optaplanner.core.impl.score.director.drools.DroolsScoreDirector.calculateScore(DroolsScoreDirector.java:117)
> at org.optaplanner.core.impl.score.director.AbstractScoreDirector.doAndProcessMove(AbstractScoreDirector.java:187)
> at org.optaplanner.core.impl.constructionheuristic.decider.ConstructionHeuristicDecider.doMove(ConstructionHeuristicDecider.java:126)
> at org.optaplanner.core.impl.constructionheuristic.decider.ConstructionHeuristicDecider.decideNextStep(ConstructionHeuristicDecider.java:100)
> at org.optaplanner.core.impl.constructionheuristic.DefaultConstructionHeuristicPhase.solve(DefaultConstructionHeuristicPhase.java:74)
> at org.optaplanner.core.impl.solver.AbstractSolver.runPhases(AbstractSolver.java:88)
> at org.optaplanner.core.impl.solver.DefaultSolver.solve(DefaultSolver.java:191)
> at canihazafischbroetchenplz.app.TestApp.main(TestApp.java:35)
> Caused by: java.lang.NullPointerException
> at org.drools.core.base.accumulators.CollectSetAccumulateFunction.reverse(CollectSetAccumulateFunction.java:118)
> at org.drools.core.base.accumulators.CollectSetAccumulateFunction.reverse(CollectSetAccumulateFunction.java:49)
> at org.drools.core.base.accumulators.JavaAccumulatorFunctionExecutor.reverse(JavaAccumulatorFunctionExecutor.java:133)
> at org.drools.core.rule.SingleAccumulate.reverse(SingleAccumulate.java:116)
> ... 28 more
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 10 months
[JBoss JIRA] (DROOLS-2733) Support MVEL Dialect using custom inline accumulate code with external declarations in the executable model
by Luca Molteni (Jira)
[ https://issues.jboss.org/browse/DROOLS-2733?page=com.atlassian.jira.plugi... ]
Luca Molteni updated DROOLS-2733:
---------------------------------
Sprint: 2019 Week 29-31
> Support MVEL Dialect using custom inline accumulate code with external declarations in the executable model
> -----------------------------------------------------------------------------------------------------------
>
> Key: DROOLS-2733
> URL: https://issues.jboss.org/browse/DROOLS-2733
> Project: Drools
> Issue Type: Feature Request
> Components: executable model
> Reporter: Luca Molteni
> Assignee: Luca Molteni
> Priority: Optional
>
> The executable model doesn't support custom inline accumulate code that uses external declarations such as
> {code:java}
> String str = "import " + Person.class.getCanonicalName() + ";\n" +
> "rule R dialect \"mvel\" when\n" +
> " String( $l : length )" +
> " $sum : Integer() from accumulate (\n" +
> " Person( age > 18, $age : age ), init( int sum = 0 * $l; ), action( sum += $age; ), reverse( sum -= $age; ), result( sum )\n" +
> " )" +
> "then\n" +
> " insert($sum);\n" +
> "end";
> {code}
> (Notice that in the init we multiply the sum value with the length of string)
> But it can support such style using the "classic" generation of accumulate classes which gets compiled among the executable model and instantiate during the execution of the DSL.
> This mechanism is broken with the MVEL dialect, as we don't have such generated classes.
> Probably what we should do instead is putting MVEL expressions in the DSL directly such as
> {code:java}
> accumulateScript("initCode", "accCode", "reverseCode");
> {code}
> and then during interpretation create a new MVEL context and execute the accumulate in memory
> See
> AccumulateUnsupportedTest.testMVELAccumulate
> AccumulateUnsupportedTest.testMVELAccumulate2WM
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 10 months
[JBoss JIRA] (WFLY-12235) ClassNotFoundException over org.glassfish.jersey.client.JerseyClientBuilder when sec-mgr is enabled
by Alessio Soldano (Jira)
Alessio Soldano created WFLY-12235:
--------------------------------------
Summary: ClassNotFoundException over org.glassfish.jersey.client.JerseyClientBuilder when sec-mgr is enabled
Key: WFLY-12235
URL: https://issues.jboss.org/browse/WFLY-12235
Project: WildFly
Issue Type: Bug
Reporter: Alessio Soldano
Assignee: Alessio Soldano
Fix For: 18.0.0.Beta1
>From JBEAP-17069:
When the security manager is enabled the resteasy client initialization fails with the following exception:
{noformat}
ERROR [io.undertow.request] (default task-1) UT005023: Exception handling request to /resteasy/SampleServlet: java.lang.RuntimeException: java.lang.ClassNotFoundException: org.glassfish.jersey.client.JerseyClientBuilder from [Module "javax.ws.rs.api" version 1.0.1.Final-redhat-00001 from local module loader @69d9c55 (finder: local module finder @13a57a3b (roots: /opt/jboss/jboss-eap-7.2/modules,/opt/jboss/jboss-eap-7.2/modules/system/layers/base/.overlays/layer-base-jboss-eap-7.2.1.CP,/opt/jboss/jboss-eap-7.2/modules/system/layers/base))]
at javax.ws.rs.client.ClientBuilder.newBuilder(ClientBuilder.java:132)
at com.redhat.sample.SampleServlet.processRequest(SampleServlet.java:29)
at com.redhat.sample.SampleServlet.doGet(SampleServlet.java:48)
...
Caused by: java.lang.ClassNotFoundException: org.glassfish.jersey.client.JerseyClientBuilder from [Module "javax.ws.rs.api" version 1.0.1.Final-redhat-00001 from local module loader @69d9c55 (finder: local module finder @13a57a3b (roots: /opt/jboss/jboss-eap-7.2/modules,/opt/jboss/jboss-eap-7.2/modules/system/layers/base/.overlays/layer-base-jboss-eap-7.2.1.CP,/opt/jboss/jboss-eap-7.2/modules/system/layers/base))]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:255)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:410)
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:116)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at javax.ws.rs.client.FactoryFinder.newInstance(FactoryFinder.java:120)
at javax.ws.rs.client.FactoryFinder.find(FactoryFinder.java:227)
at javax.ws.rs.client.ClientBuilder.newBuilder(ClientBuilder.java:96)
... 52 more
{noformat}
It seems that the issue is that the internal resteasy class is not found and the default {{org.glassfish.jersey.client.JerseyClientBuilder}} is tried but fails.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 10 months
[JBoss JIRA] (JBEE-197) ModuleNotFoundException: org.jboss.resteasy.resteasy-jaxrs-api:main
by Alessio Soldano (Jira)
[ https://issues.jboss.org/browse/JBEE-197?page=com.atlassian.jira.plugin.s... ]
Alessio Soldano updated JBEE-197:
---------------------------------
Fix Version/s: jboss-jaxrs-api-2.1_1.0.2.Final
> ModuleNotFoundException: org.jboss.resteasy.resteasy-jaxrs-api:main
> -------------------------------------------------------------------
>
> Key: JBEE-197
> URL: https://issues.jboss.org/browse/JBEE-197
> Project: JBoss JavaEE Spec APIs
> Issue Type: Bug
> Components: jboss-jaxrs-api
> Reporter: Alessio Soldano
> Assignee: Alessio Soldano
> Priority: Major
> Fix For: jboss-jaxrs-api-2.1_1.0.2.Final
>
>
> {noformat}
> java.lang.RuntimeException: Could not create new instance of class org.jboss.arquillian.test.impl.EventTestRunnerAdaptor
> at org.jboss.arquillian.test.spi.SecurityActions.newInstance(SecurityActions.java:146)
> at org.jboss.arquillian.test.spi.SecurityActions.newInstance(SecurityActions.java:89)
> at org.jboss.arquillian.test.spi.TestRunnerAdaptorBuilder.build(TestRunnerAdaptorBuilder.java:49)
> at org.jboss.arquillian.junit.AdaptorManager.initializeAdaptor(AdaptorManager.java:21)
> at org.jboss.arquillian.junit.AdaptorManagerWithNotifier.initializeAdaptor(AdaptorManagerWithNotifier.java:19)
> at org.jboss.arquillian.junit.Arquillian.run(Arquillian.java:109)
> 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:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> 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.reflect.InvocationTargetException
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> at org.jboss.arquillian.test.spi.SecurityActions.newInstance(SecurityActions.java:144)
> ... 17 more
> Caused by: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
> at javax.ws.rs.client.ClientBuilder.newBuilder(ClientBuilder.java:103)
> at com.github.dockerjava.jaxrs.JerseyDockerCmdExecFactory.init(JerseyDockerCmdExecFactory.java:229)
> at com.github.dockerjava.core.DockerClientImpl.withDockerCmdExecFactory(DockerClientImpl.java:161)
> at com.github.dockerjava.core.DockerClientBuilder.build(DockerClientBuilder.java:47)
> at org.arquillian.cube.docker.impl.util.DefaultDocker.getDefaultDockerClient(DefaultDocker.java:13)
> at org.arquillian.cube.docker.impl.client.CubeDockerConfigurationResolver.resolveSystemDefaultSetup(CubeDockerConfigurationResolver.java:217)
> at org.arquillian.cube.docker.impl.client.CubeDockerConfigurationResolver.resolve(CubeDockerConfigurationResolver.java:70)
> at org.arquillian.cube.docker.impl.client.CubeDockerConfigurator.configure(CubeDockerConfigurator.java:82)
> at org.arquillian.cube.docker.impl.client.CubeDockerConfigurator.configure(CubeDockerConfigurator.java:63)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:86)
> at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:103)
> at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:90)
> at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:133)
> at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:105)
> at org.jboss.arquillian.core.impl.ManagerImpl.bindAndFire(ManagerImpl.java:232)
> at org.jboss.arquillian.core.impl.InstanceImpl.set(InstanceImpl.java:67)
> at org.arquillian.cube.impl.client.CubeConfigurator.configure(CubeConfigurator.java:23)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:86)
> at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:103)
> at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:90)
> at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:133)
> at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:105)
> at org.jboss.arquillian.core.impl.ManagerImpl.bindAndFire(ManagerImpl.java:232)
> at org.jboss.arquillian.core.impl.InstanceImpl.set(InstanceImpl.java:67)
> at org.jboss.arquillian.config.impl.extension.ConfigurationRegistrar.loadConfiguration(ConfigurationRegistrar.java:72)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:86)
> at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:103)
> at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:90)
> at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:133)
> at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:105)
> at org.jboss.arquillian.core.impl.ManagerImpl.start(ManagerImpl.java:253)
> at org.jboss.arquillian.test.impl.EventTestRunnerAdaptor.<init>(EventTestRunnerAdaptor.java:61)
> ... 22 more
> Caused by: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
> at javax.ws.rs.client.FactoryFinder.getModuleClassLoader(FactoryFinder.java:258)
> at javax.ws.rs.client.FactoryFinder.find(FactoryFinder.java:203)
> at javax.ws.rs.client.ClientBuilder.newBuilder(ClientBuilder.java:87)
> ... 65 more
> Caused by: java.lang.reflect.InvocationTargetException
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at javax.ws.rs.client.FactoryFinder.getModuleClassLoader(FactoryFinder.java:250)
> ... 67 more
> Caused by: org.jboss.modules.ModuleNotFoundException: org.jboss.resteasy.resteasy-jaxrs-api:main
> at org.jboss.modules.ModuleLoader.loadModule(ModuleLoader.java:240)
> ... 72 more
> {noformat}
> The fix for JBEE-169 didn't consider the scenario in which JBoss Modules is actually available in the classpath, but the module is not there.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 10 months
[JBoss JIRA] (DROOLS-4241) Prototype concurrent rule units
by Edoardo Vacchi (Jira)
[ https://issues.jboss.org/browse/DROOLS-4241?page=com.atlassian.jira.plugi... ]
Edoardo Vacchi updated DROOLS-4241:
-----------------------------------
Description:
follow up to DROOLS-3819
Prototype for concurrent executor for units
*deliverable* a code example
was:
follow up to DROOLS-3819
Prototype for concurrent executor for units
> Prototype concurrent rule units
> -------------------------------
>
> Key: DROOLS-4241
> URL: https://issues.jboss.org/browse/DROOLS-4241
> Project: Drools
> Issue Type: Task
> Reporter: Edoardo Vacchi
> Assignee: Edoardo Vacchi
> Priority: Major
> Labels: drools-core, kogito, submarine
> Fix For: 8.0.0.Final
>
>
> follow up to DROOLS-3819
> Prototype for concurrent executor for units
> *deliverable* a code example
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
6 years, 10 months