Проблема с получением результата запроса из базы данных - PullRequest
0 голосов
/ 21 июня 2010

Я создал класс с именем SpecializationBean, который имеет два приватных поля:

private ArrayList<SelectItem> specializationItems= new ArrayList<SelectItem>();
private String specializationName;

У меня, конечно, есть геттер и сеттер для этих двоих.

и метод buildSpecializationList, который создает список specializationItems: (я вызываю этот метод в геттере):

public void buildSpecializationList(){
    List<Object[]> specializations = null;

    try{
        Session mySession = HibernateUtil.getAdmSessionFactory().getCurrentSession();
        Transaction transaction = mySession.beginTransaction();
        String sql = "SELECT  J_Specialization_ID, Specialization_Name_Ar FROM J_Specialization WHERE J_Department_ID = '1000001'";
        Query query = mySession.createSQLQuery(sql).addScalar("id", Hibernate.LONG).addScalar("name", Hibernate.STRING);
        specializations = query.list();

    }
    catch(Exception e){
        e.printStackTrace();
    }
    this.specializationItems = new ArrayList<SelectItem>(90);
    for(Object[] sp: specializations ){
        this.specializationItems.add(new SelectItem(sp[0],(String) sp[1]));
    }

}

Проблема в том, что я получаю исключение нулевого указателя, которое показывает, что список specializations (определенный в buildSpecializationList()) является нулевым. Я попробовал запрос сам на столе, и он возвращает результат. Я также попробовал HQL-запрос (istead):

String sqlQuery = "Select JSpecializationId, specializationNameAr FROM JSpecializationWHERE JDepartmentId = '1000001'";
Query q = mySession.createQuery(sqlQuery);

Но все же я получаю исключение нулевого указателя, которое показывает, что запрос возвращает мне нулевой результат. У вас есть предложения?

1 Ответ

0 голосов
/ 28 июня 2010

Для любого, кто сталкивается с этой проблемой, используя Hibernate ...... создание нового класса и переписывание всего этого на самом деле может решить проблему !!!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...