Estou desenvolvendo uma Web Service, mas não sei o que estou fazendo de errado, talvez alguém de vocês me ajude a enxergar o que esta de errado
Estou tentando realizar um select dentro do postgresql através de um where, porém tem apresentado o seguinte erro:
HTTP Status 500 - Internal Server Error
type Exception report
messageInternal Server Error
descriptionThe server encountered an internal error that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: org.glassfish.jersey.server.ContainerException: org.postgresql.util.PSQLException: O �ndice da coluna est� fora do intervalo: 1, n�mero de colunas: 0.
root cause
org.glassfish.jersey.server.ContainerException: org.postgresql.util.PSQLException: O �ndice da coluna est� fora do intervalo: 1, n�mero de colunas: 0.
root cause
org.postgresql.util.PSQLException: O �ndice da coluna est� fora do intervalo: 1, n�mero de colunas: 0.
note The full stack traces of the exception and its root causes are available in the GlassFish Server Open Source Edition 4.1.1 logs.
Já verifiquei tanto os nomes das colunas da tabela como os itens inseridos nela e todos estão digitados corretamente. Vou deixar abaixo o código usado para vocês darem uma olhada e me ajudarem a achar o erro.
GET
@Produces(“application/json”)
@Path(“Usuario/get/{nome}”)
public String getUsuario(@PathParam(“nome”) String nome) throws SQLException
{
Usuario u = new Usuario();
u.setNome(nome);UsuarioDAO dao = new UsuarioDAO(); u = dao.buscar(u); Gson g = new Gson(); return g.toJson(u); }
public Usuario buscar(Usuario usuario) throws SQLException
{String sql = "select * from usuarios where nome like '?%'"; Usuario retorno = null; PreparedStatement pst = Conexao.getPreparedStatement(sql); pst.setString(1, usuario.getNome()); ResultSet res = pst.executeQuery(); if(res.next()) { retorno = new Usuario(); retorno.setLoginus(res.getString("loginus")); retorno.setSenha(res.getString("senha")); retorno.setEmail(res.getString("email")); retorno.setNome(res.getString("nome")); } return retorno; }