2017-12-15 3 views
0

Wie füge ich in einen Einstiegspunkt auf RHS ein?Drools 7: verwenden Eingangspunkt von Konsequenz (RHS)

Von Mastering JBoss Drools 6 Buch

rule "Routing.." 
when 
... 
then entryPoints["Stream Y"].insert(t) 
end 

Ich versuche, diese Arbeit mit geifert 7 zu machen, aber ich erhalte eine Fehlermeldung Unable to build KieBaseModel.

EDIT: Voll Nachricht:

Unable to Analyse Expression drools.entryPoints["Stream Y"].insert(t);: 
[Error: unable to resolve method using strict-mode: org.drools.core.spi.KnowledgeHelper.entryPoints()] 
[Near : {... drools.entryPoints["Stream Y"].insert ....}] 

Hinweis: Ich habe keine globale entrypoints genannt definiert.

+0

Haben Sie die vollständige Fehlermeldung haben Sie bekommen? –

+0

Hallo! Ich habe eine Fehlermeldung hinzugefügt. – fanvabra

Antwort

1

Offenbar ist die entryPoints Automagic Variable ist es nicht mehr in geifert 7. Sie können so etwas wie dieses, obwohl versuchen:

rule "Routing.." 
when 
    ... 
then 
    drools.getEntryPoint("Stream Y").insert(t) 
end 

Hoffe, dass es hilft,

+0

Hallo und danke! In meinen Regeln benutzte ich den Dialekt "mvel". Ich fand entryPoints ["Stream Y"] funktioniert nur mit Java-Dialekt. Ich wusste nicht, dass dies das beeinflussen könnte, also habe ich es nicht in Frage gestellt. Auch hatte ich keine Regeln, die den Einstiegspunkt auf LHS verwenden. Deine Antwort drools.getEntrypoint funktioniert sowohl mit Java als auch mit MVEL. – fanvabra

Verwandte Themen