Drools: методы HashMap получают и помещают неопределенный тип объекта - PullRequest
0 голосов
/ 02 сентября 2018

Возникли проблемы с синтаксисом drools. Не уверен, в чем проблема. Должен ли я снова привести «$ values1» к HashMap в части «then» правила?

Вот сообщение об ошибке: метод get (String) не определен для типа Object

import drools.spring.example.beans.*;
import drools.spring.example.controller.*;
import java.util.Date;
import java.util.HashMap;
import java.util.ArrayList;

rule "Chr check"
    when
        $values1: HashMap() and
        $allPatients: ArrayList() and
        $d: Date()
    then
        for(Patient p : (ArrayList<Patient>) $allPatients) {

            for(Appointment pr : (ArrayList<Appointment>) p.getAppointments()) {

                if(pr.getDateOfAppointment().after(workWithDates($d, "-", 1, 2))) {
                    //Following line is where the error occurs
                    $values1.get(p.getIdPatient()).put((String) pr.getDiagnosedDisease().getName(), (int) $values1.get((String)p.getIdPatient()).get(pr.getDiagnosedDisease().getName())+1);

                }
            }
        }
end
...