Проблема связана с вашим тестом $F{Personel_ODEME}.equals(Boolean.TRUE)
, который Джаспер считает сравнением от String
до Boolean
, и ему это не нравится. Чтобы это исправить, попробуйте это:
($F{Personel_ODEME}.equals(Boolean.TRUE.toString())) ? "PAID" : "NO PAID"
Это приведет к сравнению String
с String
.
Хорошо отметить, что в Java "true".equals(Boolean.TRUE)
приведет к ложному.
редактировать:
Это выглядит как выражение PrintWhen от Jasper, которое позволяет вам определять, печатать ли содержимое ячейки или нет. Он ожидает Boolean.TRUE
или Boolean.FALSE
в качестве возвращаемых значений. Когда вы возвращаете «Оплачено», Джаспер пытается оценить это String
как Boolean
, которое он не может, поэтому выдает исключение.