JBNC 0 Denunciar post Postado Setembro 10, 2008 Fala Pessoal, Sou iniciante em JSP, e tenho um grande problema. Não estou conseguinto conectar o formulário que faz a tela de login com o Mysql. Já instalei o MySQL na minha maquina e coloquei o drive na pasta WEB-INF\lib do projeto. Quando vou fazer o teste para ver se esta logando ele me dar o seguinte erro: HTTP Status 404 - /servlet/ServletValidarUsuario -------------------------------------------------------------------------------- type Status report message /servlet/ServletValidarUsuario description The requested resource (/servlet/ServletValidarUsuario) is not available. -------------------------------------------------------------------------------- Apache Tomcat/5.5.26 Segue abaixo os codigos. logoff.jsp <%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title</title> <link href="_css/Ssaion2.css" rel="stylesheet" type="text/css" /> </head> <body> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td height="110"> </td> <td> </td> <td> </td> </tr> <tr> <td> </td> <td width="25%"> <div id="cabecalho" align="right"> <div><br/>SAION Web - LOGIN</div> </div> <div align="center" id="corpo" style="height: 160px"> <form action="../servlet/ServletValidarUsuario" method="post" name="ValidarUsuario"> <table align="center" width="70%" height="50%" border="0" cellspacing="0" cellpadding="0"> <tr> <td height="47"> </td> </tr> <tr> <td align="right"> <label class="ff">LOGIN:</label> <input class="STexto" name="TLogin" type="text" size="15" maxlength="20" /><br/></td> </tr> <tr> <td align="right"> <label class="ff">SENHA:</label> <input class="STexto" name="TSenha" type="password" size="15" maxlength="20" /></td> </tr> <tr> <td align="right"> <input name="BLogin" type="submit" class="SButton" value="OK"/> <input name="BCancel" type="reset" class="SButton" value="CANCEL"/> </td> </tr> </table> </form> </div> <div id="rodape" style="font:bold 9px arial">SAION (Sistema de Avaliação de Institucional Online)</div> </td> <td> </td> </tr> <tr> <td> </td> <td> </td> <td> </td> </tr> </table> </body> </html> web.xml <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <servlet> <servlet-name>ServletValidarUsuario</servlet-name> <servlet-class>servlet.ServletValidarUsuario</servlet-class> </servlet> <servlet-mapping> <servlet-name>ServletValidarUsuario</servlet-name> <url-pattern>../servlet/ServletValidarUsuario</url-pattern> </servlet-mapping> </web-app> ServletValidarUsuario.class package servlet; import javax.servlet.http.*; import javax.servlet.ServletException; import java.io.IOException; import java.io.PrintWriter; import java.sql.*; import java.net.*; import javax.servlet.*; public class ServletValidarUsuario extends HttpServlet{ private static final long serialVersionUID = 1L; Connection con=null; Statement smt; public void init(ServletConfig conf) throws ServletException{ super.init(conf); try{ Class.forName("com.mysql.jdbc.Driver").newInstance(); con = DriverManager.getConnection("jdbc:mysql://localhost:3306/MySQL","root","root"); } catch(SQLException sqle){ sqle.printStackTrace(); con = null;} catch(InstantiationException e){ e.printStackTrace(); con = null;} catch(IllegalAccessException e){ e.printStackTrace(); con = null;} catch(ClassNotFoundException e){ e.printStackTrace(); con = null;} } public void doPost(HttpServletRequest Request, HttpServletResponse Response) throws IOException, ServletException{ PrintWriter out = Response.getWriter(); String nome; String senha; ValidarUsuario objValidarUsuario = new ValidarUsuario(); nome = Request.getParameter("TLogin"); senha = Request.getParameter("TSenha"); String n = Request.getParameter("cadastrar"); objValidarUsuario.setTLogin(nome); objValidarUsuario.setTSenha(senha); out.println(objValidarUsuario.getTLogin()); out.println(objValidarUsuario.getTSenha()); out.println(n); try { smt = con.createStatement(); smt.executeUpdate("insert into bexterna (Nome,Matr-CPF) values ('"+nome+"','"+senha+"')"); out.println("ok"); } catch (SQLException e) { e.printStackTrace(); out.println("Erro: Problemas ao inserir dados");} } } ValidarUsuario.class package servlet; public class ValidarUsuario { private String TLogin; private String TSenha; public void setTLogin(String n){ this.TLogin = n; } public void setTSenha(String d){ this.TSenha =d; } public String getTLogin(){ return TLogin; } public String getTSenha(){ return TSenha; } } Me ajudem por favor. Muito obrigado e aguardo resposta. JBNC... Compartilhar este post Link para o post Compartilhar em outros sites
sublyer 0 Denunciar post Postado Setembro 10, 2008 kra seu mapeamento no web.xml está errado. Tenta assim, coloquei em negrito a parte que modifiquei.. <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <servlet> <servlet-name>ServletValidarUsuario</servlet-name> <servlet-class>servlet.ServletValidarUsuario</servlet-class> </servlet> <servlet-mapping> <servlet-name>ServletValidarUsuario</servlet-name> <url-pattern>~/servlet/ServletValidarUsuario</url-pattern> </servlet-mapping> </web-app> Flww, grande abraço. Compartilhar este post Link para o post Compartilhar em outros sites
JBNC 0 Denunciar post Postado Setembro 10, 2008 Prezado sublyer, Ainda não foi, o erro continua mesmo mudando o web.xml. O que eu estou percebendo que ele não esta criando o class. Muito obrigado e aguardo resposta e solução para o problema. JBNC... Compartilhar este post Link para o post Compartilhar em outros sites
sublyer 0 Denunciar post Postado Setembro 11, 2008 As classes compiladas (.class) estão no diretório WEB-INF/classes ? Se não estiver, verifique aonde sua IDE está compilando as classes e então modifique a configuração, para compilar as classes no diretório WEB-INF/classes Flww, grande abraço. Compartilhar este post Link para o post Compartilhar em outros sites
Discorpio 1 Denunciar post Postado Setembro 14, 2008 Bom dia a todos. Creio que o erro está aqui: Class.forName("com.mysql.jdbc.Driver").newInstance(); // Faltou registrar o Driver no DriverManager con = DriverManager.getConnection("jdbc:mysql://localhost:3306/MySQL","root","root") Tenta assim e vê se funciona: Class driver = Class.forName("com.mysql.jdbc.Driver"); DriverManager.registerDriver((Driver)driver.newInstance()); conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/MySQL","root","root"); Um abraço. Jorge da Silva Abreu Compartilhar este post Link para o post Compartilhar em outros sites
sublyer 0 Denunciar post Postado Setembro 15, 2008 As classes compiladas estão no diretório classes do diretório WEB-INF e o driver do mysql está no diretório lib do WEB-INF? Flwww Compartilhar este post Link para o post Compartilhar em outros sites
JBNC 0 Denunciar post Postado Setembro 25, 2008 Prezado sublyer, O banco esta sendo acessado mas o que esta acontecendo agora é quando estou mexando nas classes dentro do eclipse não esta sendo atualizado. O que não estou entendendo. Me ajudem por favor. Muito obrigado e aguardo resposta. JBNC... Compartilhar este post Link para o post Compartilhar em outros sites
sublyer 0 Denunciar post Postado Setembro 26, 2008 Dentro do eclipse existe uma opção de compilação das classes, aonde é definido o caminho de armazenamento das classes compiladas em seu sistema operacional. Para o acesso a este recurso, acesse as propriedades de seu projeto e configure o local de armazenamento das classes compiladas. Infelizmente não tenho como lhe falar qual é o local exato agora, pois estou sem o eclipse. Mas tente procurar este recurso que assim que eu puder lhe informo o local deste recurso. Um grande abraço Compartilhar este post Link para o post Compartilhar em outros sites