Спящий с Struts2-JQuery-сетки.Если я закрываю сессию, сетка не загружает данные - PullRequest
0 голосов
/ 16 февраля 2012

Я занимаюсь разработкой веб-приложения с struts2-jquery-grid и hibernate.Это работает, когда я не закрываю сеанс, но если я закрываю, сетка не загружает данные базы данных.

Следующий код не работает:

public List<Concurso> find(int o, int q){
    List<Concurso> concursoLst = null;
    sessao.beginTransaction();
    concursoLst = (ArrayList<Concurso>) sessao.createQuery("from Concurso order by nome").list();
    sessao.getTransaction().commit();
    sessao.close();
    return concursoLst;

Но с другой стороны, если я прокомментирую sessao.close (), он отлично работает:

public List<Concurso> find(int o, int q){
    List<Concurso> concursoLst = null;
    sessao.beginTransaction();
    concursoLst = (ArrayList<Concurso>) sessao.createQuery("from Concurso order by nome").list();
    sessao.getTransaction().commit();
    //sessao.close();
    return concursoLst;

Итак, execute () вызывает этот метод:

    public String execute(){ 

    //code

    ConcursoDAO dao = new ConcursoDAO();
    gridModel = dao.find(from, to);

    //code
    }

Может кто-нибудь помочьмне????Спасибо !!

1 Ответ

1 голос
/ 16 февраля 2012

Может ли быть так, что у вашего Concurso объекта есть список лениво загруженных объектов, и что они не будут загружаться, потому что вы закрыли сеанс.

Вам необходимо предоставить нам больше информации,но в настоящее время попробуйте установить

@OneToMany(fetch = FetchType.EAGER)

для коллекций в Concurso и прочитать информацию об открытии сеанса в представлении, хотя некоторые могут назвать это анти-шаблоном.

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