Olá,
Resumo da pergunta: como passar um objeto em um setter via tag jsp:setProperty , por exemplo: setTipo(Tipo t), quero passar uma instancia de tipo pela tag.
Quero usar minha classe AlunoDAO no JSP para listar:
public class AlunoDAO {
private Session session;
public AlunoDAO() {
}
public void setSession(Session session) {
this.session = session;
}
public List<Aluno> listar(){
return session.createCriteria(Aluno.class).list();
}
}
[code]<%@ taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c” %>
<jsp:useBean id=“dao” class=“br.com.caelum.dao.AlunoDAO”>
<jsp:setProperty name=“dao” property=“session” param=“Session” value="<%= HibernateFactory.getInstance() %>" />
</jsp:useBean>
<c:forEach var="aluno" items="${dao.listar}">
<li>
<c:out value="${aluno}"/>
</li>
</c:forEach>
[/code]
O problema está nessa linha, não deve ser assim que se faz, já tentei também com ${ } e nada.
<jsp:setProperty name="dao" property="session" value="<%= HibernateFactory.getInstance() %>" />
Para eu criar o objeto DAO, que faz a consulta dos alunos, eu preciso de uma sessao, cujo o método estático getInstance() me retorna. Mas comoeu faço pra setar essa instância pro objeto? (Isso é chamar o setSession() )
Eu só consigo setar String ou número.
Essas tags de javabeans não foram feitas pra isso?