У меня есть постоянный класс «Собрание», в котором есть поля «минуты» и «часы». Мне нужны только эти два поля, чтобы заполнить раскрывающийся список в моем пользовательском интерфейсе. Пример , который я обнаружил , говорит мне, что я могу создать простой bean-компонент, который будет содержать только эти два поля, но я получаю сообщение об ошибке, говорящее, что он не может преобразовать Integer в объект MyTime. Очевидно, это не отображение данных в bean-компонент, и, к сожалению, это единственный пример, который я могу найти.
String query = "select hour as myHour, minute as myMinute into " + MyTime.class.getName() + " from " + Meeting.class.getName(); //+
List<MyTime> times = (List<MyTime>)pm.newQuery(query).execute();
for(int i=0; i<times.size(); i++) {
MyTime myTime = (MyTime)times.get(i);
System.out.println(myTime.getMyHour());
System.out.println(myTime.getMyMinute());
}
Вот как выглядит «times» в режиме отладки после запуска execute:
[0, 0, 0, 0, 0, 0, 8, 10, 21]
И тогда я получаю ошибку в цикле for, когда пытаюсь привести и индексировать время к объекту MyTime.
java.lang.ClassCastException: java.lang.Integer не может быть приведен к com.emooney.meeting.beans.MyTime
Есть идеи, как мне получить эти данные, не возвращая весь объект 'Meeting' для каждой встречи?
Вот бин MyTime:
public class MyTime {
public int myHour;
public int myMinute;
.. getters and setters..
}
}