2010-11-16 2 views
0

Мы используем движок Drools на нашем клиенте, написанном на C#. Мы используем IKVM для преобразования банки слюни и наших java-компонентов в dll с использованием IKVM. Мы правило похоже на это: -Ошибка Drools с IKVM

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» для ввода «FromMemory».

Любые идеи о том, что может произойти неправильно?

ответ

0

Это может иметь много причин. Например, проблема classloading. Это может быть ошибка в IKVM. и т.д.

Я думаю, что вы не получите полезный ответ здесь. Вам следует связаться с списком рассылки из IKVM со многими подробностями, такими как версия IKVM, как вы скомпилировали dlls, runnable sample, чтобы продемонстрировать проблему.

Эта проблема возникает, если вы debug.

Смежные вопросы