IKVM 出现 Drools 错误
我们在客户端上使用用 C# 编写的 Drools 引擎。我们正在使用 IKVM 将 drools jar 和我们的 java beans 转换为使用 IKVM 的 dll。我们有一个与此类似的规则:-
rule "aggregate rule"
when
$b : Bill(billAmount > 100)
$n : Number(doubleValue > 100) from accumulate ( $l : LineItem() from $b.findItems("color", "blue"), sum($l.getSellingValue()))
then
VoucherSeries fact0 = new VoucherSeries();
fact0.setSeriesCode( "aggregate voucher" );
insert(fact0 );
voucherlist.add(fact0);
System.out.println("sum" + $n);
end
当使用基于 java 的 drools API 运行时,该规则工作正常,但是在使用 IKVM 转换的 drools 运行时,它会抛出以下错误:-
无法将类型为“AccumulateMemory”的对象转换为类型“来自记忆”。
关于可能出什么问题有什么想法吗?
We are using Drools engine on our client written in C#. We are using IKVM to convert the drools jar and our java beans into dll's using IKVM. We are a rule similar to this:-
rule "aggregate rule"
when
$b : Bill(billAmount > 100)
$n : Number(doubleValue > 100) from accumulate ( $l : LineItem() from $b.findItems("color", "blue"), sum($l.getSellingValue()))
then
VoucherSeries fact0 = new VoucherSeries();
fact0.setSeriesCode( "aggregate voucher" );
insert(fact0 );
voucherlist.add(fact0);
System.out.println("sum" + $n);
end
This rule works fine when it is run with java based drools API's, but while running it with IKVM converted drools, it throws the following error:-
Unable to cast object of type 'AccumulateMemory' to type 'FromMemory'.
Any ideas on what might be going wrong ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这可能有很多原因。例如类加载问题。这可能是 IKVM 中的错误。等等。
我认为您不会在这里收到有用的答案。您应该联系 IKVM 的邮件列表,提供许多详细信息,例如 IKVM 版本、如何编译 dll、演示问题的可运行示例。
这个问题只有调试才能解决。
This can have many causes. For example a classloading problem. It can be a bug in IKVM. etc.
I think not that you will receive a helpful answer here. You should contact the mailing list from IKVM with many details like the IKVM version, how you have compiled the dlls, a runnable sample to demonstrate the problem.
This problem you can only solve if you debug it.