Ae pessoal, estou com um problema em um dos meus SERVLET’s
Erro:
Problema ao cadastrar Usuário. Erro:ERROR: syntax error at or near "$2"
org.postgresql.util.PSQLException: ERROR: syntax error at or near "$2"
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1608)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1343)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:194)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:451)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:350)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:343)
at br.com.promayor.DAO.UsuarioDAOImp.cadastrar(UsuarioDAOImp.java:58)
at br.com.promayor.controller.CadastrarUsuario.processRequest(CadastrarUsuario.java:71)
at br.com.promayor.controller.CadastrarUsuario.doPost(CadastrarUsuario.java:109)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Servlet CadastarUsuario
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package br.com.promayor.controller;
import br.com.promayor.DAO.UsuarioDAO;
import br.com.promayor.DAO.UsuarioDAOImp;
import br.com.promayor.model.Usuario;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
*
* @author Etec Fernandópolis
*/
public class CadastrarUsuario extends HttpServlet {
/**
* Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String nome_usuario=request.getParameter("nome_usuario");
String sobrenome_usuario=request.getParameter("sobrenome_usuario");
String endereco_usuario=request.getParameter("endereco_usuario");
int numero_usuario=Integer.parseInt(request.getParameter("numero_usuario"));
String bairro_usuario=request.getParameter("bairro_usuario");
String cidade_usuario=request.getParameter("cidade_usuario");
String cep_usuario=request.getParameter("cep_usuario");
String estado_usuario=request.getParameter("estado_usuario");
int telefone_usuario=Integer.parseInt(request.getParameter("telefone_usuario"));
int telefone2_usuario=Integer.parseInt(request.getParameter("telefone2_usuario"));
String email_usuario=request.getParameter("email_usuario");
String cpf_usuario=request.getParameter("cpf_usuario");
String rg_usuario=request.getParameter("rg_usuario");
String login_usuario=request.getParameter("login_usuario");
String senha_usuario=request.getParameter("senha_usuario");
Usuario usuario= new Usuario();
usuario.setNome_usuario(nome_usuario);
usuario.setSobrenome_usuario(sobrenome_usuario);
usuario.setEndereco_usuario(endereco_usuario);
usuario.setNumero_usuario(numero_usuario);
usuario.setBairro_usuario(bairro_usuario);
usuario.setCidade_usuario(cidade_usuario);
usuario.setCep_usuario(cep_usuario);
usuario.setEstado_usuario(estado_usuario);
usuario.setTelefone_usuario(telefone_usuario);
usuario.setTelefone2_usuario(telefone2_usuario);
usuario.setCpf_usuario(cpf_usuario);
usuario.setRg_usuario(rg_usuario);
usuario.setEmail_usuario(email_usuario);
usuario.setLogin_usuario(login_usuario);
usuario.setSenha_usuario(senha_usuario);
String mensagem = "";
try{
UsuarioDAO usuarioDAO=new UsuarioDAOImp();
usuarioDAO.cadastrar(usuario);
mensagem = "<script>window.alert('Usuário Cadastrado com Sucesso.')</script>";
request.setAttribute("mensagem", mensagem);
request.getRequestDispatcher("cadastrarusuario.jsp").forward(request, response);
}
catch(Exception e){
System.out.println("Problemas ao obter a Instancia pelo Servlet ou ao Invocar o " +
"metodo Cadastrar Usuario. "+ e.getMessage());
e.printStackTrace();
throw new ServletException(e);
}
}
// <editor-fold defaultstate="collapsed" desc="Métodos HttpServlet. Clique no sinal de + à esquerda para editar o código.">
/**
* Handles the HTTP <code>GET</code> method.
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Handles the HTTP <code>POST</code> method.
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Returns a short description of the servlet.
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
}
Classe UsuarioDAOImp[code]
/*
- To change this template, choose Tools | Templates
- and open the template in the editor.
*/
package br.com.promayor.DAO;
import br.com.promayor.model.Usuario;
import br.com.promayor.util.ConnectionFactory;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
/**
*
-
@author Etec Fernandópolis
*/
public class UsuarioDAOImp implements UsuarioDAO {
private Connection conn;
public UsuarioDAOImp() throws Exception{
try{
this.conn=ConnectionFactory.getConnection();
System.out.println(“Conectado com Sucesso.”);
}
catch(Exception e){
throw new Exception("Problemas ao Conectar com o Banco. Erro: "+e.getMessage() );
}
}
public void cadastrar(Usuario usuario) {
PreparedStatement stmt=null;
try{
String sql = "INSERT INTO usuario(nome_usuario, sobrenome_usuario, "+
"endereco_usuario, numero_usuario, bairro_usuario, cidade_usuario, " +
"cep_usuario, estado_usuario, telefone_usuario, telefone2_usuario, " +
"cpf_usuario, rg_usuario, email_usuario, login_usuario, senha_usuario)" +
" VALUES (???????????????)";
stmt = conn.prepareStatement(sql);
stmt.setString(1, usuario.getNome_usuario());
stmt.setString(2, usuario.getSobrenome_usuario());
stmt.setString(3, usuario.getEndereco_usuario());
stmt.setInt(4, usuario.getNumero_usuario());
stmt.setString(5,usuario.getBairro_usuario());
stmt.setString(6,usuario.getCidade_usuario());
stmt.setString(7,usuario.getCep_usuario());
stmt.setString(8,usuario.getEstado_usuario());
stmt.setInt(9,usuario.getTelefone_usuario());
stmt.setInt(10,usuario.getTelefone2_usuario());
stmt.setString(11, usuario.getCpf_usuario());
stmt.setString(12,usuario.getRg_usuario());
stmt.setString(13,usuario.getEmail_usuario());
stmt.setString(14, usuario.getLogin_usuario());
stmt.setString(15, usuario.getSenha_usuario());
stmt.execute();
System.out.println("Professor cadastrado com sucesso ");
}
catch(SQLException sqle){
System.out.println("Problema ao cadastrar Usuário. Erro:" + sqle.getMessage());
sqle.printStackTrace();
}
finally{
try{
stmt.close();
}
catch(SQLException e){
System.out.println("Problemas ao fechar o statement! Erro "+ e.getMessage());
}
}
}
}
[/code]
Quem souber responde aí !
VLW