问题描述
您的表转储将字段显示为“ Usarios”,但您正在执行rs.getString("usuario")
。那不是以下内容吗?
rs.getString("usuarios")
如果那不起作用,那么我建议您调试您的代码,在该getString
行上放置一个断点,然后查看ResultSet
以查看其中的字段名称。
解决方法
我收到以下错误:org.postgresql.util.PSQLException:在此ResultSet中找不到列名usuario。
但是,我在适当的类中正确声明了以下usuario列!
UsuariosGruposDAO.class
public Object objectFactory(ResultSet rs) {
try {
UsuariosGrupos usergroup = new UsuariosGrupos(rs.getString("usuario"),rs.getString("grupo"));
return usergroup;
} catch (SQLException e) {
e.printStackTrace();
// retorno do método
return null;
}
}
UsuariosGrupos.class
public class UsuariosGrupos {
private String usuario;
private String grupo;
public UsuariosGrupos() {
}
public UsuariosGrupos(String usuario,String grupo) {
this.usuario = usuario;
this.grupo = grupo;
}
错误出现在以下行:
ugList.add((UsuariosGrupos) objectFactory(rs));
我的List方法:
List<UsuariosGrupos> ugList = null;
try {
//Conecta no banco
conn.conectar();
//Prepara o preparedStatment
stmt = (PreparedStatement) conn.getPreparedStatement("SELECT * from usuarios_grupos");
//Executa a instrucao SQL
ResultSet rs = stmt.executeQuery();
ugList = new ArrayList<UsuariosGrupos>();
//Enquanto ouver resultSet
while (rs.next()) {
ugList.add((UsuariosGrupos) objectFactory(rs));
}
System.out.println("################################UsuariosGrupos OK################################");
} catch (SQLException e) {
System.out.println("################################UsuariosGrupos Falhou################################");
e.printStackTrace();
} finally {
conn.desconectar();
}
return ugList;
}
奇怪的是,当我分别测试我的列表时,数据表会显示适当的结果。但是,当我运行我的整个应用程序时,什么都没有显示,并且我收到错误消息,指出在结果集中找不到列usuario。有什么建议?
该表有两个字段:
Usuarios | Grupos
admin 2
admin 3
当我分离我的jsf代码时,它显示正常,但是当我将其存储在一个JSF文件中时,它不显示数据。