Exception executing consequence for rule xxx in yyy: java.lang.RuntimeException: unable to access field
by magaram
Has anybody run into this exception with Drools. I get it on 5.4 as well as
5.3. Any help on this is deeply appreciated. Stack trace follows -
Exception occurred during event dispatching:
Exception executing consequence for rule "BORA00005" in InvoiceOnly:
java.lang.RuntimeException: unable to access field
at
org.drools.runtime.rule.impl.DefaultConsequenceExceptionHandler.handleException(DefaultConsequenceExceptionHandler.java:39)
at org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1283)
at org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:1209)
at org.drools.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1442)
at
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:710)
at
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:674)
at
org.drools.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:230)
at com.deltadental.claims.rules.engine.RuleEngine.executeDRL(Unknown
Source)
at com.deltadental.claims.rules.richUI.BasicRuleTestDialog.execute(Unknown
Source)
at
com.deltadental.claims.rules.richUI.BasicTestCaseExecutionDialog$2.actionPerformed(Unknown
Source)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6297)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3275)
at java.awt.Component.processEvent(Component.java:6062)
at java.awt.Container.processEvent(Container.java:2039)
at java.awt.Component.dispatchEventImpl(Component.java:4660)
at java.awt.Container.dispatchEventImpl(Container.java:2097)
at java.awt.Component.dispatchEvent(Component.java:4488)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4575)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4236)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4166)
at java.awt.Container.dispatchEventImpl(Container.java:2083)
at java.awt.Window.dispatchEventImpl(Window.java:2489)
at java.awt.Component.dispatchEvent(Component.java:4488)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:668)
at java.awt.EventQueue.access$400(EventQueue.java:81)
at java.awt.EventQueue$2.run(EventQueue.java:627)
at java.awt.EventQueue$2.run(EventQueue.java:625)
at java.security.AccessController.doPrivileged(Native Method)
at
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:641)
at java.awt.EventQueue$3.run(EventQueue.java:639)
at java.security.AccessController.doPrivileged(Native Method)
at
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:638)
at
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
at java.awt.Dialog$1.run(Dialog.java:1044)
at java.awt.Dialog$3.run(Dialog.java:1096)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Dialog.show(Dialog.java:1094)
at
com.deltadental.claims.rules.richUI.util.AbstractJDialog.showCentralized(Unknown
Source)
at
com.deltadental.claims.rules.richUI.BasicTestCaseExecutionDialog.<init>(Unknown
Source)
at
com.deltadental.claims.rules.richUI.BasicRuleTestDialog$2.actionPerformed(Unknown
Source)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6297)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3275)
at java.awt.Component.processEvent(Component.java:6062)
at java.awt.Container.processEvent(Container.java:2039)
at java.awt.Component.dispatchEventImpl(Component.java:4660)
at java.awt.Container.dispatchEventImpl(Container.java:2097)
at java.awt.Component.dispatchEvent(Component.java:4488)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4575)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4236)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4166)
at java.awt.Container.dispatchEventImpl(Container.java:2083)
at java.awt.Window.dispatchEventImpl(Window.java:2489)
at java.awt.Component.dispatchEvent(Component.java:4488)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:668)
at java.awt.EventQueue.access$400(EventQueue.java:81)
at java.awt.EventQueue$2.run(EventQueue.java:627)
at java.awt.EventQueue$2.run(EventQueue.java:625)
at java.security.AccessController.doPrivileged(Native Method)
at
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:641)
at java.awt.EventQueue$3.run(EventQueue.java:639)
at java.security.AccessController.doPrivileged(Native Method)
at
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:638)
at
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
at java.awt.Dialog$1.run(Dialog.java:1044)
at java.awt.Dialog$3.run(Dialog.java:1096)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Dialog.show(Dialog.java:1094)
at
com.deltadental.claims.rules.richUI.util.AbstractJDialog.showCentralized(Unknown
Source)
at com.deltadental.claims.rules.richUI.BasicRuleTestDialog.<init>(Unknown
Source)
at
com.deltadental.claims.rules.richUI.TestBillingOutputRulePackageDialog.<init>(Unknown
Source)
at
com.deltadental.claims.rules.richUI.BillingOutputGenerationStrategy.startTestRulesPackageDialog(Unknown
Source)
at
com.deltadental.claims.rules.richUI.action.TestRulePackageAction.actionPerformedImpl(Unknown
Source)
at
com.deltadental.claims.rules.richUI.action.DDAbstractAction.actionPerformed(Unknown
Source)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.AbstractButton.doClick(AbstractButton.java:357)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:809)
at
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:850)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)
at java.awt.Component.processMouseEvent(Component.java:6297)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3275)
at java.awt.Component.processEvent(Component.java:6062)
at java.awt.Container.processEvent(Container.java:2039)
at java.awt.Component.dispatchEventImpl(Component.java:4660)
at java.awt.Container.dispatchEventImpl(Container.java:2097)
at java.awt.Component.dispatchEvent(Component.java:4488)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4575)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4236)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4166)
at java.awt.Container.dispatchEventImpl(Container.java:2083)
at java.awt.Window.dispatchEventImpl(Window.java:2489)
at java.awt.Component.dispatchEvent(Component.java:4488)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:668)
at java.awt.EventQueue.access$400(EventQueue.java:81)
at java.awt.EventQueue$2.run(EventQueue.java:627)
at java.awt.EventQueue$2.run(EventQueue.java:625)
at java.security.AccessController.doPrivileged(Native Method)
at
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:641)
at java.awt.EventQueue$3.run(EventQueue.java:639)
at java.security.AccessController.doPrivileged(Native Method)
at
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:638)
at
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Caused by: java.lang.RuntimeException: unable to access field
at
org.mvel2.optimizers.impl.refl.nodes.DynamicFieldAccessor.setValue(DynamicFieldAccessor.java:66)
at
org.mvel2.optimizers.impl.refl.nodes.VariableAccessor.setValue(VariableAccessor.java:46)
at
org.mvel2.compiler.CompiledAccExpression.setValue(CompiledAccExpression.java:59)
at
org.mvel2.ast.DeepAssignmentNode.getReducedValueAccelerated(DeepAssignmentNode.java:92)
at org.mvel2.MVELRuntime.execute(MVELRuntime.java:85)
at
org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:123)
at org.mvel2.MVEL.executeExpression(MVEL.java:930)
at org.drools.base.mvel.MVELConsequence.evaluate(MVELConsequence.java:101)
at org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1273)
... 130 more
Caused by: java.lang.NullPointerException
at org.mvel2.DataConversion.convert(DataConversion.java:118)
at
org.mvel2.optimizers.impl.refl.nodes.DynamicFieldAccessor.setValue(DynamicFieldAccessor.java:61)
... 138 more
The rule in question is -
rule BORA00005
salience 9998997
when
$billingOutputRuleContext : BillingOutputRuleContext()
$Current_Billing_Cycle :
BCRuleContext((eval(this.getBillingCycleStatusType() ==
BillingCycleStatusType.OUTPUT_IN_PROCESS) &&
eval(this.getRunDate().compareTo($billingOutputRuleContext.getTodayDate())
<= 0)))
$Retroactive_Subscriber_Adjustment :
BSARuleContext((eval(this.getAdjustedBC() != $Current_Billing_Cycle) &&
eval(this.getBillingAdjustmentReasonType() ==
BillingAdjustmentReasonType.COVERAGE_TYPE_CHANGE) &&
eval(this.isNonZero())))
eval(($Retroactive_Subscriber_Adjustment.getAdjustedBC().getBillingClientType()
== BillingClientType.RISK &&
$Current_Billing_Cycle.getSubClientCobraAdminType() == CobraAdminType.NONE))
then
$billingOutputRuleContext.retroPreviousBillAmount =
($billingOutputRuleContext.retroPreviousBillAmount +
$Retroactive_Subscriber_Adjustment.getAdjustedBC().getCurrentBSI().getRISKBilledRate());
$billingOutputRuleContext.stampRule(drools.getRule().getName())
end
--
View this message in context: http://drools.46999.n3.nabble.com/Exception-executing-consequence-for-rul...
Sent from the Drools: User forum mailing list archive at Nabble.com.
13 years, 2 months
Guvnor model with 'Comparable' not working
by Sandjaja, Dominik
Hi everybody,
I use Guvnor 5.4 and have a model which consists of classes and subclasses.
@Entity
public class TestClass {
@Id
private long id;
@Embedded
private TestEmbeddable embedded;
}
@Embeddable
public class TestEmbeddable implements Comparable<TestEmbeddable> {
@Column
private String testProperty;
@Override
public int compareTo(TestEmbeddable o) {...}
}
Now, in Guvnor I use the guided Editor and create a new WHEN condition:
There is a TestClass with:
embedded ...
Usually, when I click on "embedded", I can select
Apply a constraint to a sub-field of 'embedded': Show sub fields ...
This line does NOT show if that subclass (here: TestEmbeddable) implements Comparable. It does however work if I don't use Comparable or if I select TestEmbeddable directly (which I can't as I don't inject those into my working environment).
Is this a known bug? I couldn't find anything about this.
TIA
Dominik
...........................................................................
mit freundlichen Gr??en / kind regards
Dominik Sandjaja
Fon: +49 (0) 203 60878 183
Fax: +49 (0) 203 60878 222
e-mail: dominik.sandjaja(a)it-motive.de
it-motive AG
Zum Walkm?ller 10-12
47269 Duisburg
info(a)it-motive.de
http://www.it-motive.de
..............................................................................
Vorsitzender des Aufsichtsrats: Dipl.-Ing. Klaus Straub
Vorstand: Horst-Dieter Deelmann (Vors.), Matthias Heming, Christoph Tim Klose
HRB 9207, Amtsgericht Duisburg
13 years, 2 months
Deploying Guvnor on JBoss AS fails with FileNotFoundException
by Thomas Söhngen
Hello,
I am trying to deploy Guvnor 5.5.0.Final on JBoss AS 7.1.1.Final
(running in a Ubuntu VM). I rename the
"guvnor-5.5.0.Final-jboss-as-7.0.war" to "guvnor.war" and copy it in the
"standalone\deployments" folder of the AS. The AS starts the deployment,
but fails immediately with the following error:
12:14:44,669 INFO [org.jboss.as.server.deployment] (MSC service thread
1-6) JBAS015876: Starting deployment of "guvnor.war"
12:14:57,083 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-3)
MSC00001: Failed to start service
jboss.deployment.unit."guvnor.war".STRUCTURE:
org.jboss.msc.service.StartException in service
jboss.deployment.unit."guvnor.war".STRUCTURE: Failed to process phase
STRUCTURE of deployment "guvnor.war"
at
org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:119)
[jboss-as-server-7.1.1.Final.jar:7.1.1.Final]
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
[jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
[jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
[rt.jar:1.6.0_18]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
[rt.jar:1.6.0_18]
at java.lang.Thread.run(Thread.java:636) [rt.jar:1.6.0_18]
Caused by:
org.jboss.as.server.deployment.DeploymentUnitProcessingException: Failed
to mount deployment content
at
org.jboss.as.server.deployment.module.DeploymentRootMountProcessor.deploy(DeploymentRootMountProcessor.java:91)
[jboss-as-server-7.1.1.Final.jar:7.1.1.Final]
at
org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:113)
[jboss-as-server-7.1.1.Final.jar:7.1.1.Final]
... 5 more
Caused by: java.io.FileNotFoundException:
/home/notroot/svn/rules-engine/jboss-as-7.1.1.Final/standalone/tmp/vfs/temp45e614882d11012e/guvnor.war-6762d1b407bcac4f/WEB-INF/classes/org/drools/guvnor/client/explorer/navigation/qa/testscenarios/FactDataWidgetFactory$DeleteFactColumnButton$1.class
(File name too long)
at java.io.FileOutputStream.open(Native Method) [rt.jar:1.6.0_18]
at java.io.FileOutputStream.<init>(FileOutputStream.java:209)
[rt.jar:1.6.0_18]
at java.io.FileOutputStream.<init>(FileOutputStream.java:160)
[rt.jar:1.6.0_18]
at org.jboss.vfs.VFSUtils.unzip(VFSUtils.java:870)
at org.jboss.vfs.VFS.mountZipExpanded(VFS.java:536)
at org.jboss.vfs.VFS.mountZipExpanded(VFS.java:567)
at
org.jboss.as.server.deployment.DeploymentMountProvider$Factory$ServerDeploymentRepositoryImpl.mountDeploymentContent(DeploymentMountProvider.java:97)
[jboss-as-server-7.1.1.Final.jar:7.1.1.Final]
at
org.jboss.as.server.deployment.module.DeploymentRootMountProcessor.deploy(DeploymentRootMountProcessor.java:87)
[jboss-as-server-7.1.1.Final.jar:7.1.1.Final]
... 6 more
12:14:57,559 INFO [org.jboss.as.server] (DeploymentScanner-threads - 2)
JBAS015870: Deploy of deployment "guvnor.war" was rolled back with
failure message {"JBAS014671: Failed services" =>
{"jboss.deployment.unit.\"guvnor.war\".STRUCTURE" =>
"org.jboss.msc.service.StartException in service
jboss.deployment.unit.\"guvnor.war\".STRUCTURE: Failed to process phase
STRUCTURE of deployment \"guvnor.war\""}}
12:14:57,560 INFO [org.jboss.as.server.deployment] (MSC service thread
1-4) JBAS015877: Stopped deployment guvnor.war in 1ms
12:14:57,656 INFO [org.jboss.as.controller] (DeploymentScanner-threads
- 2) JBAS014774: Service status report
JBAS014777: Services which failed to start: service
jboss.deployment.unit."guvnor.war".STRUCTURE:
org.jboss.msc.service.StartException in service
jboss.deployment.unit."guvnor.war".STRUCTURE: Failed to process phase
STRUCTURE of deployment "guvnor.war"
12:14:57,724 ERROR [org.jboss.as.server.deployment.scanner]
(DeploymentScanner-threads - 1) {"JBAS014653: Composite operation failed
and was rolled back. Steps that failed:" => {"Operation step-2" =>
{"JBAS014671: Failed services" =>
{"jboss.deployment.unit.\"guvnor.war\".STRUCTURE" =>
"org.jboss.msc.service.StartException in service
jboss.deployment.unit.\"guvnor.war\".STRUCTURE: Failed to process phase
STRUCTURE of deployment \"guvnor.war\""}}}
Anyone got an idea, why this happens?
Best regards,
Thomas
--
Thomas Söhngen
Office: +49 221 294 975 20
Mobile: +49 178 732 1202
Email: thomas.soehngen(a)stockpulse.de
www.stockpulse.de
www.facebook.com/stockpulse
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
StockPulse UG (haftungsbeschränkt)
Sitz der Gesellschaft: Köln
Amtsgericht: Köln (HRB 145359)
Vertretungsberechtige Geschäftsführer: Stefan Nann, Jonas Krauss
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
StockPulse UG (Limited Liability)
Registered Office: Cologne
District Court: Cologne HRB (145359)
Managing Director: Stefan Nann, Jonas Krauss
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
13 years, 2 months
Guvnor 5.5 being WIERD
by starfish15
Hi,
I have been using Drools 5.2 from sometime. However we upgraded to Drools
5.5. However am facing some issues with the ACTION facts.
Earlier, using StatelesSession, we were able to use composite Command
BatchExecution and retrieve the result facts easily. When we are trying the
same thing in Drools 5.5, the result facts are some new objects i believe.
Do let me know if my Q makes sense or should i give some more info.
Regards,
Starfish
--
View this message in context: http://drools.46999.n3.nabble.com/Guvnor-5-5-being-WIERD-tp4021569.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
13 years, 2 months
NullPointerException at org.mvel2.ast.IntSub.getReducedValueAccelerated
by Michiel Vermandel
Hi,
When starting the planning solver I sometimes get the error as listed beneath.
I think it happens about 1 out of 5 runs.
It doesn't seem to have much influence on the solving process as everything continues normally (I think).
I do not use any mvel expressions to my knowledge.
Anyway, it would be nice to understand why this happens and how to get this resolved.
Exception in thread "Thread-1" java.lang.NullPointerException
at org.mvel2.ast.IntSub.getReducedValueAccelerated(IntSub.java:17)
at org.mvel2.compiler.ExecutableAccessor.getValue(ExecutableAccessor.java:38)
at org.mvel2.ast.Substatement.getReducedValueAccelerated(Substatement.java:44)
at org.mvel2.ast.BinaryOperation.getReducedValueAccelerated(BinaryOperation.java:108)
at org.mvel2.ast.And.getReducedValueAccelerated(And.java:34)
at org.mvel2.MVELRuntime.execute(MVELRuntime.java:85)
at org.mvel2.compiler.CompiledExpression.getDirectValue(CompiledExpression.java:123)
at org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:119)
at org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:113)
at org.mvel2.MVEL.executeExpression(MVEL.java:930)
at org.drools.rule.constraint.MvelConditionEvaluator.evaluate(MvelConditionEvaluator.java:70)
at org.drools.rule.constraint.MvelConditionEvaluator.ensureBranchEvaluation(MvelConditionEvaluator.java:117)
at org.drools.rule.constraint.MvelConditionEvaluator.ensureCompleteEvaluation(MvelConditionEvaluator.java:102)
at org.drools.rule.constraint.MvelConditionEvaluator.ensureCompleteEvaluation(MvelConditionEvaluator.java:90)
at org.drools.rule.constraint.MvelConditionEvaluator.getAnalyzedCondition(MvelConditionEvaluator.java:82)
at org.drools.rule.constraint.MvelConstraint.executeJitting(MvelConstraint.java:270)
at org.drools.rule.constraint.MvelConstraint.access$200(MvelConstraint.java:51)
at org.drools.rule.constraint.MvelConstraint$ConditionJitter.run(MvelConstraint.java:250)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Thanks,
Michiel
-----------------
http://www.codessentials.com - Your essential software, for free!
Follow us at http://twitter.com/#!/Codessentials
13 years, 2 months
Test for element in an arraylist
by Bojan Janisch
Hello everyone,
I got a problem with my rule. To keep it
simple here's the code:
global java.util.ArrayList odmList
rule "Combine ODMAnswers"
when
$a1:ODMAnswer( )
$a2:ODMAnswer( )
eval(odmList contains $a1 && odmList contains $a2)
then
ODMAnswer answer = new ODMAnswer( );
odmList.add(answer);
odmList.remove($a1);
odmList.remove($a2);
end
So why do I get an error message looking like this:
Rule Compilation error Syntax error on token "contains", invalid AssignmentOperator
odmList.$a2 cannot be resolved or is not a field
Syntax error on token "contains", . expected
Thanks to everyone who reads this.
Bojan
13 years, 2 months
guvnor-ng branch will be renamed master
by Toni Rikkola
This is a warning for anyone working on guvnor-ng and master branches of the Guvnor repository.
I will rename the master to master-bk and guvnor-ng to master tomorrow.
Current master will not be used in any future releases. It will be stored for a while so we can be sure commits do not get lost.
I'll email this list when I am done. I advice to avoid any fetches or pushing tomorrow before my email.
Why not merge guvnor-ng to master? Sounds easy, but guvnor-ng has a lot of changes. Files changed names and locations, modules were split, code removed and the current master has nothing the new master will need.
Toni Rikkola
13 years, 2 months
How are rules imported into the knowledgebuilder?
by Bojan Janisch
Hello everybody,
the problem that I'm facing right know is,
that I want to create rules from a program
and (without writing it to file) loading it
into the knowledgebuilder.
So does anybody know how I can load a rule
into the knowledgebuilder without using a
file?
Thanks to everyone who reads this.
Bojan
13 years, 2 months
Can drool engine validate on xml input.
by sunil.ss
Hi, As of today we are using Drools 2.0, where we are converting the xml in
to java objects before validating by drools engine. Can we send xml directly
to Drools 5.2 or higher and validate directly instead of conversion from xml
to java. Also, please share if there are any design considerations while
migrating from drools 2.0 to 5.2 or higher. Which version is stable and all.
Regards, Sunil S
--
View this message in context: http://drools.46999.n3.nabble.com/Can-drool-engine-validate-on-xml-input-...
Sent from the Drools: User forum mailing list archive at Nabble.com.
13 years, 2 months