Boa noite pessoal do fórum, estou com um problema de IoC em uma JSP. Eu tenho as seguintes classes em meu projeto:
public class Item{
//atributos e métodos da classe
}
public class GrupoDao {
private final Session session;
public GrupoDao(Session s) {
this.session = s;
}
//métodos do DAO
}
O problema é quando eu tenho que atualizar um ITEM. O meu ItemController retorna para view o ITEM a ser editado, até ai tudo bem, mas
só que nessa view eu tenho um SELECT que eu fazia assim para preenche-lo:
Grupo:<select name="item.fk_grupo">
<!-- cria a lista -->
<jsp:useBean id="dao" class="br.com.dao.GrupoDao"/>
<c:forEach var="grupo" items="${dao.lista}">
<option value="${grupo.id_grupo}">${grupo.desc_grupo}</option>
</c:forEach>
</select>
Só que dessa forma forma eu tenho o seguinte erro:
org.apache.jasper.JasperException: /WEB-INF/jsp/item/edita.jsp (line: 32, column: 2) The value for the useBean class attribute br.com.dao.GrupoDao is invalid.
Eu não tinha esse problema até passar a receber a Session no construtor do GrupoDao (eu segui o exemplo da apostila f-28 da Caelum). Quando a Session
não era injetada no construtor o código acima funcionava, pois obedecia o critério do bean (construtor sem argumentos). Como eu faço pra contornar esse problema??
Tem como o Vraptor retornar mais de um objeto para a view (ele já retorna o item a ser editado)???
Obrigado desde já,
Jonh