Boa tarde amigos,
Estou tentando dar um setAttribute de um ArrayList para uma session, mas não consigo. Abaixo seguem os códigos para verificação. O que posso fazer para resolver amigos?
Trecho da minha Action:
if(bf.getOpcao().equals("PESQUISAR") && bExistListar) {
ArrayList beanFornecedorArray = daoFornecedor.listarTodosFornecedores(bf.getNomeFantasia());
HttpSession session = request.getSession();
session.setAttribute("lFornecedor", beanFornecedorArray);
//request.setAttribute("lFornecedor", beanFornecedorArray); --> POR REQUEST FUNCIONA, MAS PRECISO PASSAR PARA SESSÃO.
}
Método daoFornecedor.listarTodosFornecedores da DAO:
public ArrayList <FornecedorVO> listarTodosFornecedores(String nomeFantasia) throws Exception {
try {
String query = "SELECT * " +
"FROM TBL_FORNECEDOR F, TBL_FORNECEDOR_CONTATO FC "+
"WHERE F.NOME_FANTASIA LIKE '"+nomeFantasia+"%' "+
"AND F.ID = FC.ID "+
"ORDER BY NOME_FANTASIA ";
System.out.println("Query listarTodosFornecedores: " + query);
xConn = new XConnection();
xConn.rs = xConn.seleciona(query);
ArrayList <FornecedorVO> lFornecedor = new ArrayList<FornecedorVO>();
while(xConn.rs.next()) {
FornecedorVO fornecedor = new FornecedorVO();
fornecedor.setId(xConn.rs.getString(1));
fornecedor.setNomeFantasia(xConn.rs.getString(2));
fornecedor.setRazaoSocial(xConn.rs.getString(3));
fornecedor.setCnpj(xConn.rs.getString(4));
fornecedor.setIe(xConn.rs.getString(5));
fornecedor.getContato().setNuTel(xConn.rs.getString(9));
lFornecedor.add(fornecedor);
}
System.out.println("Montou lista: " + lFornecedor.size());
xConn.fechaConexao();
return lFornecedor;
} catch(SQLException e) {
System.out.println("ERROR listarTodosFornecedores: " + e.toString());
xConn.fechaConexao();
return null;
} catch(Exception e) {
System.out.println("ERROR listarTodosFornecedores: " + e.toString());
xConn.fechaConexao();
return null;
}
}
Obrigado.