1

Drools ファイルでいくつかの異なるタイプの日付 (DateTime と DateMidnight) を追跡するために joda-time を使用しています。when 条件の一部として、オブジェクトの日付を取得し、他のすべてのオブジェクトの日付を比較して、より新しいオブジェクトがないことを確認します。日付は同じ形式 (DateTime) ですが、Tomcat 経由でペイロードを送信しようとすると、一貫して次のエラーが表示されます。

Caused by: java.lang.NoSuchMethodError: org.joda.time.DateTime.compareTo(Lorg/joda/time/DateTime;)
at edu.measure.growth.Rule_assume_first_measurement_is_valid586933554.defaultConsequence(Rule_assume_first_measurement_is_valid586933554.java:7)
at edu.measure.growth.Rule_assume_first_measurement_is_valid586933554DefaultConsequenceInvokerGenerated.evaluate(Unknown Source)
at edu.measure.growth.Rule_assume_first_measurement_is_valid586933554DefaultConsequenceInvoker.evaluate(Unknown Source)

これは、エラー ログで参照されているルールです。

rule "assume first measurement is valid"
when
    // consider all measurements that have not been validated
    $m: Measurement($type: parameter, valid == false, $dt: date)
    // verify no measurements occur after target date
    not Measurement(parameter == $type, date<$dt))
then
    modify($m) {setValid(true);}
end

< 演算子を使用して比較したくないようです。これは他の人がよく経験するエラーですか? 私はそれを修正する方法について何も見つけることができなかったので、どんな助けでも大歓迎です!

4

1 に答える 1

1

使用している DROOLS のバージョンは何ですか?

修正されたバグだったようです: https://issues.jboss.org/browse/DROOLS-37?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

于 2013-04-24T16:17:10.143 に答える