Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Drools 7.59.0 Migration to Drools 10.0.0 #6206

Open
dakshay4 opened this issue Dec 20, 2024 · 3 comments
Open

Drools 7.59.0 Migration to Drools 10.0.0 #6206

dakshay4 opened this issue Dec 20, 2024 · 3 comments

Comments

@dakshay4
Copy link

dakshay4 commented Dec 20, 2024

I am getting issue while migrating from Drools 7.59.0.Final to 10.0.0

I am Building KieBase using -

Kiebase kBase = new KieHelper().addContent(drlContent, ResourceType.DRL).build();

String drlContent is :

DRL package loan.management;
//generated from Decision Table
import loan.management.domain.model.fee.LendingChargeData;
// rule values at A9, header at A4
rule "Credit_Card_RTL_Full_Repayment_Done"
	when
		$charge:LendingChargeData($charge.getProductType() == ("Credit Card"))
	then
		$charge.setFeePercent(0);
end

This is the stack trace after calling

Caused by: java.lang.UnsupportedOperationException: null
at org.drools.compiler.rule.builder.ConstraintBuilder$DummyConstraintBuilder.setExprInputs(ConstraintBuilder.java:210)
at org.drools.compiler.rule.builder.PatternBuilder.getExprBindings(PatternBuilder.java:1122)
at org.drools.compiler.rule.builder.PatternBuilder.buildRelationalExpression(PatternBuilder.java:1107)
at org.drools.compiler.rule.builder.PatternBuilder.buildExpression(PatternBuilder.java:985)
at org.drools.compiler.rule.builder.PatternBuilder.buildCcdDescr(PatternBuilder.java:957)
at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:767)
at org.drools.compiler.rule.builder.PatternBuilder.processConstraintsAndBinds(PatternBuilder.java:611)
at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:179)
at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:145)
at org.drools.compiler.rule.builder.PatternBuilder.build(PatternBuilder.java:127)
at org.drools.compiler.rule.builder.GroupElementBuilder.build(GroupElementBuilder.java:68)
at org.drools.compiler.rule.builder.RuleBuilder.build(RuleBuilder.java:100)
at org.drools.compiler.builder.impl.processors.ImmutableRuleCompilationPhase.internalAddRule(ImmutableRuleCompilationPhase.java:342)
at org.drools.compiler.builder.impl.processors.ImmutableRuleCompilationPhase.addRule(ImmutableRuleCompilationPhase.java:337)
at org.drools.compiler.builder.impl.processors.ImmutableRuleCompilationPhase.compileRulesLevel(ImmutableRuleCompilationPhase.java:301)
at org.drools.compiler.builder.impl.processors.ImmutableRuleCompilationPhase.process(ImmutableRuleCompilationPhase.java:85)
at java.base/java.util.Arrays$ArrayList.forEach(Arrays.java:4204)
at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.compileKnowledgePackages(KnowledgeBuilderImpl.java:457)
at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.buildRules(KnowledgeBuilderImpl.java:1016)
at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.doFirstBuildStep(KnowledgeBuilderImpl.java:990)
at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:119)
at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:109)
at org.drools.compiler.kie.builder.impl.AbstractKieProject.buildKnowledgePackages(AbstractKieProject.java:280)
at org.drools.compiler.kie.builder.impl.AbstractKieProject.buildKnowledgePackages(AbstractKieProject.java:220)
at org.drools.compiler.kie.builder.impl.AbstractKieProject.verify(AbstractKieProject.java:84)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildKieProject(KieBuilderImpl.java:285)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:251)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:198)
at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:204)
at org.kie.internal.utils.KieHelper.getKieContainer(KieHelper.java:124)
at org.kie.internal.utils.KieHelper.build(KieHelper.java:89)
at org.kie.internal.utils.KieHelper.build(KieHelper.java:84)

my pom.xml

<dependency>
            <groupId>org.drools</groupId>
            <artifactId>drools-decisiontables</artifactId>
            <version>10.0.0</version>
</dependency>
<dependency>
            <groupId>org.drools</groupId>
            <artifactId>drools-engine</artifactId>
            <version>10.0.0</version>
</dependency>
@alexsuter
Copy link

Drools 10.0.0 has been released. Any release notes available?

@tkobayas
Copy link
Contributor

tkobayas commented Jan 7, 2025

@dakshay4 github issue is used for tracking identified bugs. Please use zulip (https://kie.zulipchat.com/#narrow/channel/232677-drools) or mailing list (https://groups.google.com/g/drools-usage) for trouble-shooting.

Having that said, I think the issue can be resolved by

Kiebase kBase = new KieHelper().addContent(drlContent, ResourceType.DRL).build(ExecutableModelProject.class);

@tkobayas
Copy link
Contributor

tkobayas commented Jan 7, 2025

@alexsuter Sorry, documentation is not yet available. we are working on it.

So far, here is the change notes: https://github.com/apache/incubator-kie-drools/releases/tag/10.0.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants