Jsp - access

5 respostas
F

Galera!!
Preciso aprender jsp na marra...estou tentando fazer uma pagina de consulta a banco de dados.
Criei o DSN: locadora apontando pro BD: teste.mdb que tem uma tabela: filmes ...segue o código:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Filmes</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>

<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<% 
Connection con1 = null;
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url = "jdbc:odbc:locadora";
Connection con1;
con1 = DriverManager.getConnection(url, "", "");
} catch (Exception e)
{
out.println("Exception: " + e.toString());
} catch (ClassNotFoundException e)
{
out.println("ClassNotFoundException error: " + e.toString());
}

try
{
Statement stmt = con1.createStatement();
String sql = "";
sql = "SELECT * FROM filmes";
ResultSet rs = stmt.executeQuery(sql);

%>

<table width="98%" height="86" border="0" cellpadding="0" cellspacing="0">
  <tr> 
    <td height="36" colspan="5"> <div align="center"><strong><font size="+3">Lista 
        de Filmes</font></strong></div></td>
  </tr>
  <tr> 
    <td width="20%" height="23" bgcolor="#00CCFF"> <div align="center"><strong><font size="+1">Código</font></strong></div></td>
    <td width="20%" bgcolor="#00CCFF"> <div align="center"><strong><font size="+1">Nome</font></strong></div></td>
    <td width="21%" bgcolor="#00CCFF"> <div align="center"><strong><font size="+1">Descrição</font></strong></div></td>
    <td width="17%" bgcolor="#00CCFF"> <div align="center"><strong><font size="+1">Cotação</font></strong></div></td>
    <td width="22%" bgcolor="#00CCFF"> <div align="center"><strong><font size="+1">Capa</font></strong></div></td>
  </tr>
  <% while(rs.next()) {%>
  <tr bgcolor="#00CCCC"> 
    <td height="27"><%= rs.getInt("codigo")%> 
      <div align="center"></div></td>
    <td><%= rs.getString("nome")%> 
      <div align="center"></div></td>
    <td><%= rs.getString("descricao")%> 
      <div align="center"></div></td>
    <td><%= rs.getString("cotacao")%> 
      <div align="center"></div></td>
    <td><div align="center"></div></td>
  </tr>
  <% }
  rs.close();
  stmt.close();
  con1.close();
 } 
 catch (Exception e) {
out.println("Erro: " + e.toString());
}
 
  %>
</table>


</body>
</html>

Quando coloco pra rodar o jsp, ápresenta o seguinte erro:

org.apache.jasper.JasperException: Unable to compile class for JSP

An error occurred at line: 11 in the jsp file: /lista_geral.jsp

Generated servlet error:
[javac] Compiling 1 source file

C:\tomcat\work\Standalone\localhost\Webdesv\lista_geral_jsp.java:59: con1 is already defined in _jspService(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
Connection con1;
^
1 error

at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:85)
at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:248)
at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:315)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:328)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:427)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:142)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)

E mais um milhão de linhas!!!. Desculpe inha ignorância..mas ja pesquisei diversos tipos de conexão a banco de dadfos e não estou conseguindo!!

Se alguem puder me ajudar..Agradeço!!

Fábio

5 Respostas

R

C:\tomcat\work\Standalone\localhost\Webdesv\lista_geral_jsp.java:59: con1 is already defined in _jspService(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse) Connection con1;

vc declarou o con1 duas vezes …

Connection con1 = null;

depois 

Connection con1;
F

Valeu pela dica!!

eu removi akela linha…mas agora esta com esse erro, que por minha ignorância to tentando resolver até agora…e resolvi apelar vendo se vc ou alguem pode me ajudar!!..segue:

Generated servlet error:
[javac] Compiling 1 source file

C:\tomcat\work\Standalone\localhost\Webdesv\lista_geral_jsp.java:69: cannot find symbol
symbol : variable con1
location: class org.apache.jsp.lista_geral_jsp
Statement stmt = con1.createStatement();
^

An error occurred at line: 59 in the jsp file: /lista_geral.jsp

Generated servlet error:
C:\tomcat\work\Standalone\localhost\Webdesv\lista_geral_jsp.java:162: cannot find symbol
symbol : variable con1
location: class org.apache.jsp.lista_geral_jsp
con1.close();
^
2 errors

F

Alguem poderia me ajudar…ainda não esta rodando…nem a pau!!!

D

Qual dos dois con1 q tu deletou ???

<title>Filmes</title>
<meta http-equiv=“Content-Type” content=“text/html; charset=iso-8859-1”>
</head>

<body>

<%@ page import=java.sql.<em>" %>

<%@ page import="<a href="http://java.io">java.io</a>.</em>” %>

<%

Connection con1 = null;  // <==== ESSE AQUI FICA

try

{

Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);

String url = jdbc:odbc:locadora;

Connection con1;  //<== ESSE AQUI SAI

con1 = DriverManager.getConnection(url, “”, “”);

} catch (Exception e)

{


Assim quando tu tentar dar o creatStatement a var con1 vai existir no contexto se caso tu tenha deixado apenas a que esta dentro do try ela nao vai ser enxergada fora do try.

Outra coisa uma boa prática (pelo menos eu sempre faço assim) é antes de fechar :

rs.close();

stmt.close();

con1.close();

testar se eles são diferentes de null assim:

if (rs != null) rs.close();

if (stmt!= null) stmt.close();

if (con1!= null) con1.close();

isso evita que de um null pointer exception.

:coffee:

F

Brigadão Diego , era isso mesmo…agora ta redondinho…valeu pela ajuda epelas dicas!!

Abraõs,

Fábio

Criado 5 de maio de 2005
Ultima resposta 9 de mai. de 2005
Respostas 5
Participantes 3