Erro tomcat

9 respostas
S

Pessoal tou com o pequeno problema que imagino que seja com o tomcat no netBeans.Vou descrever o que ocorreu:
Estou fazendo um aplicação web onde esta faz uma conexão com um banco para fazer uma inserção de dados no acces.
Fiz a minha aplicação utilizando servlets e ela funcionou tranquilamente ontem, porém hoje fui rodar novamente ela não esta mais rodando normalmente.Dai peguei a mesma aplicação e executei utilizando o glassfish v3 e rodou perfeitamento como antes porem não funciona mais com o tomcat 6. Acorre o seguinte erro:

SQL Error: java.sql.SQLException: [Microsoft][ODBC Driver Manager] Nome da fonte de dados não encontrado e nenhum driver padrão especificado 0 IM002

Não sei realmente o que ocorre,não sei se é o tomcat, ou driver de conecção, não sei… Preciso realmente de ajuda o mais rápido possível!já não sei o que fazer.
Código do Servlet

import java.io.*;
import java.sql.*;

/**
 *
 * @author 
 * @version
 */
public class GravaAluno extends HttpServlet {
   
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        String data = "jdbc:odbc:alunos";
        String disciplina = request.getParameter("disciplina");
        String turma = request.getParameter("turma");
        String filename = 
                "C:\\Prog Web\\InsereAlunos1\\Alunos1.txt";
        String str1 = "Insert into turma1 values ('";
        String str2 = "',0,0,0,0)";  // valores de nota1, nota2, nota3 e faltas
        String str = "";
        String texto="";      
	       try {
	            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
	            Connection conn = DriverManager.getConnection(
	                data, "", "");
	            Statement st = conn.createStatement();
                    BufferedReader br = new BufferedReader(new 
				FileReader(filename));
                    String lin = "";
                    br.readLine(); // Lê a 1a. linha 
                    while((lin = br.readLine()) != null){ // Lê a próxima linha
                        str = str1 + lin.substring(3,11) + "', '" +
                            lin.substring(12, lin.length()) +"', '" + disciplina +
                                "', '" + turma + str2;
                        st.executeUpdate(str);
                        texto = texto + str + "<br />";
                    }
                    st.close();
                    conn.close();
               }catch (SQLException s) {
	            out.println("SQL Error: " + s.toString() + " "
	                + s.getErrorCode() + " " + s.getSQLState());
	        } catch (Exception e) {
	            out.println("Error: " + e.toString()
	                + e.getMessage());
	        }
	    
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Servlet InsereAlu1</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Servlet InsereAlu1 at " + request.getContextPath () + "</h1>");
        out.println("<h2>Inserindo dados</h2>");
        out.println("<p>" + texto + "</p>");
        out.println("</body>");
        out.println("</html>");
         
        out.close();
    }
    
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        processRequest(request, response);
    }
 
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        processRequest(request, response);
    }
   
    public String getServletInfo() {
        return "Short description";
    }
}

Sim e também tá perfeitamento configura o Driver do access, definido como alunos.
Help!

9 Respostas

yoshikichi

vc registrou o ODBC no Ruindows?
falow

Adelar

Não sei como faz no tomcat… mas acho que está faltando configurar a fonte de dados que está sendo passada na linha 15. (Editado: o mesmo que está no post acima)

Att.

D

Amigo, nunca vi essa exceção … mas pelo que vc falou talvez o glassfish tenha uma lib nativa que o tomcat não tem … acho que vc devia dar uma olhada no log do tomcat … no código quando vc capturar a exceção exibe o stacktrace … tipo e.printStackTrace()

S

Registrei sim o ODBC!

LPJava

tem certeza que o driver está na pasta lib do seu projeto, foi la e viu?

S

Amigão desculpe a minha ignorância, mas não existe nenhuma pasta lib em meu projeto.A unica pasta lib que conheço esta no diretório onde foi instalado o apache tomcat.
Estou fazendo as minha aplicação no netbeans e o diretorio do netbeans Projects onde esta a minha aplicação não tem a pasta lib.Por favor expecificar melhor,Desculpa!

LPJava

seu projeto nao eh jee? nao tem a estrutura WEB-INF etc?

S

Tem sim!

LPJava

pois eh sim tem, poe o driver .jar na pasta lib.

Criado 9 de junho de 2010
Ultima resposta 10 de jun. de 2010
Respostas 9
Participantes 5