2010-11-16 7 views
0

Nous utilisons le moteur Drools sur notre client écrit en C#. Nous utilisons IKVM pour convertir le pot bave et nos beans java en dll en utilisant IKVM. Nous sommes une règle similaire à celle-ci: -erreur Drools avec 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 

Cette règle fonctionne très bien quand il est exécuté avec l'API Drools à base de java de, mais alors qu'il fonctionne avec IKVM converti Drools, il jette l'erreur suivante: -

Impossible de convertir l'objet de type "AccumulateMemory" en type "FromMemory".

Des idées sur ce qui pourrait mal tourner?

Répondre

0

Cela peut avoir plusieurs causes. Par exemple un problème classloading. Cela peut être un bug dans IKVM. etc.

Je ne pense pas que vous recevrez une réponse utile ici. Vous devriez contacter la liste de diffusion d'IKVM avec de nombreux détails comme la version d'IKVM, comment vous avez compilé les dll, un exemple exécutable pour démontrer le problème.

Ce problème vous ne pouvez résoudre que si vous debug il.