I am creating a webservice where I will return the values from my postgresql table. However, when I perform this function, a blank screen appears as if there were no data to be returned. I purposely failed to connect the connection data as driver, user, password, bd, and so on. and also tried to include errors in the select command itself, but when I make an error in any of these data, it ends up presenting a different error. The codes below have the correct information, but still do not display an error message, just the blank screen with no information.
I think there may be some misconfiguration in postgresql itself, but I have already configured it to have external access to the pg_hba.conf and postgresql.conf files, and there have been no changes.
# IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all 0.0.0.0/0 md5
# IPv6 local connections:
host all all ::1/128 md5
# - Connection Settings -
listen_addresses = '*' # what IP address(es) to listen on;
Function Used =
public List<Usuario> listar()
{
String sql = "SELECT * FROM Usuario";
List<Usuario> retorno = new ArrayList<Usuario>();
PreparedStatement pst = Conexao.getPreparedStatement(sql);
try {
ResultSet res = pst.executeQuery();
while(res.next())
{
Usuario item = new Usuario();
item.setLogin(res.getString("Login"));
item.setSenha(res.getString("Senha"));
item.setEmail(res.getString("Email"));
item.setNome(res.getString("Nome"));
retorno.add(item);
}
} catch (SQLException ex) {
Logger.getLogger(UsuarioDAO.class.getName()).log(Level.SEVERE, null, ex);
}
return retorno;
}
User Class =
public class Usuario {
private String Login;
private String Senha;
private String Email;
private String Nome;
public String getLogin() {
return Login;
}
public void setLogin(String Login) {
this.Login = Login;
}
public String getSenha() {
return Senha;
}
public void setSenha(String Senha) {
this.Senha = Senha;
}
public String getEmail() {
return Email;
}
public void setEmail(String Email) {
this.Email = Email;
}
public String getNome() {
return Nome;
}
public void setNome(String Nome) {
this.Nome = Nome;
}
}
Connection Class =
public class Conexao {
private static final String banco =
"jdbc:postgresql://localhost:5433/OniPresente";
/**
* O atributo driver representa a classe do Driver JDBC que será usada na
* conexão. Quando se utiliza outros bancos usa-se a classe apropriada a
* cada banco
*/
private static final String driver =
"org.postgresql.Driver";
/**
* Os atributos usuario e senha representam usuario e senha do
* SGBD a ser usado na conexão
*/
private static final String usuario = "postgres";
private static final String senha = "1234";
/**
* O atributo con representa um objeto que
* contém a conexão com o banco de dados em si
*/
private static Connection con = null;
/**
* Metodo que retorna uma conexão com o banco de dados
* @return objeto java.sql.Connection
*/
public static Connection getConexao(){
// primeiro testo se o objeto con não foi inicializado
if (con == null){
try {
// defino a classe do driver a ser usado
Class.forName(driver);
// criação da conexão com o BD
con =
DriverManager.getConnection(
banco, usuario, senha);
} catch (ClassNotFoundException ex) {
System.out.println("Não encontrou o driver");
} catch (SQLException ex) {
System.out.println("Erro ao conectar: "+
ex.getMessage());
}
}
return con;
}
/**
* Método que recebe um comando SQL para ser executado
* @param sql
* @return um objeto java.sql.PreparedStatement
*/
public static PreparedStatement getPreparedStatement(String sql){
// testo se a conexão já foi criada
if (con == null){
// cria a conexão
con = getConexao();
}
try {
// retorna um objeto java.sql.PreparedStatement
return con.prepareStatement(sql);
} catch (SQLException e){
System.out.println("Erro de sql: "+
e.getMessage());
}
return null;
}
Bank =
CREATE TABLE "Usuario"
(
"IdUsuario" integer NOT NULL,
"Login" character varying(20),
"Senha" character varying(20),
"Nome" character varying(50),
"Chave" character varying(20),
"DtNasc" date,
"Fone" character varying(11),
"Email" character varying(30),
"OAB" character varying(10),
"Endereco" character varying(50),
"Bairro" character varying(20),
"CEP" character varying(10),
"CodCidade" integer,
"CPF" character varying(15),
"CNPJ" character varying(20),
CONSTRAINT pk_usuario PRIMARY KEY ("IdUsuario")
)
WITH (
OIDS=FALSE
);
ALTER TABLE "Usuario" OWNER TO postgres;