org.drools.template.parser.DecisionTableParseException:电子表格

时间:2017-03-16 14:41:26

标签: drools

我看一下关于流口水的例子,请看这里https://docs.jboss.org/drools/release/6.5.0.Final/drools-docs/html_single/index.html#d0e27005;在我的kie workbench项目中添加示例文件 ExamplePolicyPricing.xls 后,单击build&部署它,错误如下:

警告:使用0个登记资源执行事务 2017年3月16日9:30:58 bitronix.tm.twopc.Preparer准备 警告:使用0个登记资源执行事务 2017年3月16日上午9:31:01 org.kie.workbench.common.services.backend.builder.Builder build 严重:电子表格中没有RuleTable单元格。 org.drools.template.parser.DecisionTableParseException:电子表格中没有RuleTable单元格。     at org.drools.decisiontable.parser.DefaultRuleSheetListener.getRuleSet(DefaultRuleSheetListener.java:139)     at org.drools.decisiontable.SpreadsheetCompiler.listenerToString(SpreadsheetCompiler.java:115)     at org.drools.decisiontable.SpreadsheetCompiler.compile(SpreadsheetCompiler.java:111)     at org.drools.decisiontable.SpreadsheetCompiler.compile(SpreadsheetCompiler.java:83)     at org.drools.decisiontable.DecisionTableProviderImpl.compileResource(DecisionTableProviderImpl.java:78)     at org.drools.decisiontable.DecisionTableProviderImpl.loadFromResource(DecisionTableProviderImpl.java:44)     at org.drools.compiler.compiler.DecisionTableFactory.loadFromResource(DecisionTableFactory.java:37)     at org.drools.compiler.builder.impl.KnowledgeBuilderImpl.decisionTableToPackageDescr(KnowledgeBuilderImpl.java:404)     at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl $ 12.map(CompositeKnowledgeBuilderImpl.java:441)     at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.buildResource(CompositeKnowledgeBuilderImpl.java:326)     at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.buildPackageDescr(CompositeKnowledgeBuilderImpl.java:311)     at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.buildPackages(CompositeKnowledgeBuilderImpl.java:115)     at org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:105)     at org.drools.compiler.kie.builder.impl.AbstractKieModule.buildKnowledgePackages(AbstractKieModule.java:244)     at org.drools.compiler.kie.builder.impl.AbstractKieProject.verify(AbstractKieProject.java:64)     在org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildKieProject(KieBuilderImpl.java:230)     在org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:198)     在org.kie.workbench.common.services.backend.builder.Builder.build(Builder.java:213)     在org.kie.workbench.common.services.backend.builder.BuildServiceImpl.doBuild(BuildServiceImpl.java:222)     在org.kie.workbench.common.services.backend.builder.BuildServiceImpl.doBuildAndDeploy(BuildServiceImpl.java:147)     在org.kie.workbench.common.services.backend.builder.BuildServiceImpl.buildAndDeploy(BuildServiceImpl.java:120)     在org.kie.workbench.common.services.backend.builder.BuildServiceImpl $ Proxy $ _ $$ WeldClientProxy.buildAndDeploy(BuildServiceImpl $ Proxy $ $$ _ WeldClientProxy.java)     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

我想知道这是KIE workben 6.5.final的错误吗?希望有人给我一些帮助,欣赏它!谢谢!

1 个答案:

答案 0 :(得分:1)

我们上传到Drools的每个决策表都有一个drools接受的格式。 RuleTable是条目,表示一堆规则将在此列的下方和右侧。此关键字左侧的任何列" RuleTable"被Drools忽略了。语法是" RuleTable Ruletablesysmbolicname"在同一栏中。

您上传的模板(电子表格)看起来没有此条目,因此您收到此错误。

确保您的电子表格中包含以下条目 RuleTable myapp_Ruleset01

RuleTable entry

有关详情,请阅读https://docs.jboss.org/drools/release/5.2.0.CR1/drools-expert-docs/html/ch06.html