Devo recuperar o registro do banco de dados na camada de visualização do Struts2?

Eu tenho uma página de edição na qual eu quero recuperar oassuntos eníveis do banco de dados e exibir como opção de seleção para o usuário editar ocurso.

Quando o formulário é enviado, ele fará uma nova solicitação, a entrada do usuário é capturada porcourseBean com validação XML. Quando a validação XML falhar, ele encaminhará com ocourseBean que apenas capturou a entrada do usuário para oedit.jsp.

Então toda vez que eu vouedit.jsp, Vou recuperar os registros do banco de dados. Devo fazer isso dessa maneira?

Além disso, tentei recuperar oassunto iluminado enível iluminado e armazená-los como o atributo request na classe de ação que exibeedit.jsp na primeira vez. Mas quando o novo pedido é feito a partir da entrada do usuário, olista de assunto elista de níveis recuperados do banco de dados não estarão mais disponíveis.

códigos (edit.jsp):

<%
    Session session2 = HibernateUtil.getSessionFactory().getCurrentSession();
    Transaction tx = session2.beginTransaction();
    Query q = session2.createQuery("from Subject");
    List subjectList = q.list();
    List levelList = session2.createQuery("from Level").list();
%>

<div class="control-group">
    <label class="control-label" for="inputPassword">Subject</label>
    <div class="controls">
        <select name="subject_id">
            <%
                for (Object subjectObject : subjectList) {
                    Subject subject = (Subject) subjectObject;
            %>
            <option value="<%=subject.getId()%>"><%=subject.getName()%></option>
            <%  } //end for %>
        </select>
    </div>
</div>

<div class="control-group">
    <label class="control-label" for="inputPassword">Level</label>
    <div class="controls">
        <select name="level_id">
            <%
                for (Object levelObject : levelList) {
                    Level level = (Level) levelObject;
            %>
            <option value="<%=level.getId()%>"><%=level.getName()%></option>
            <%  } //end for %>
        </select>
    </div>
</div>

questionAnswers(3)

yourAnswerToTheQuestion