Datasource

1 resposta
L

Estou tentando fazer a conexao via ds no tomcat 5.

está dando uma exeption (observe os prints q coloquei na classe)que é a seguinte:

INFO: Server startup in 14491 ms

13/05/2005 11:22:01 org.apache.struts.tiles.TilesRequestProcessor initDefinition

sMapping

INFO: Tiles definition factory found for request processor ‘’.

teste1

umSELECT id_cliente FROM paulista.cliente WHERE data_nascimento = TO_DATE(1965-

05-06 00:00:00, YYYY/MM/DD HH24:MI:SS) AND id_cliente = 4849

teste3

teste5

teste8

org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of class 

 for connect URL 'null

at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSou

rce.java:780)

at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource

.java:540)

at bio.action.Conex.getConnection(Unknown Source)

at bio.action.LoginAction.execute(Unknown Source)

at org.apache.struts.action.RequestProcessor.processActionPerform(Reques

tProcessor.java:421)

at org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja

va:226)

at org.apache.struts.action.ActionServlet.process(ActionServlet.java:116

4)

at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:237)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF

ilterChain.java:157)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV

alve.java:214)

at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv

eContext.java:104)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav

a:520)

at org.apache.catalina.core.StandardContextValve.invokeInternal(Standard

ContextValve.java:198)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV

alve.java:152)

at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv

eContext.java:104)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav

a:520)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j

ava:137)

at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv

eContext.java:104)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j

ava:118)

at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv

eContext.java:102)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav

a:520)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal

ve.java:109)

at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv

eContext.java:104)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav

a:520)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:16
  1. at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
    
:799)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce

ssConnection(Http11Protocol.java:705)

at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java

:577)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP

ool.java:683)

at java.lang.Thread.run(Thread.java:534)

Caused by: java.sql.SQLException: No suitable driver

at java.sql.DriverManager.getDriver(DriverManager.java:243)

at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSou

rce.java:773)

… 33 more

java.lang.NullPointerException

at bio.action.LoginAction.execute(Unknown Source)

at org.apache.struts.action.RequestProcessor.processActionPerform(Reques

tProcessor.java:421)

at org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja

va:226)

at org.apache.struts.action.ActionServlet.process(ActionServlet.java:116

4)

at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:237)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF

ilterChain.java:157)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV

alve.java:214)

at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv

eContext.java:104)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav

a:520)

at org.apache.catalina.core.StandardContextValve.invokeInternal(Standard

ContextValve.java:198)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV

alve.java:152)

at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv

eContext.java:104)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav

a:520)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j

ava:137)

at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv

eContext.java:104)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j

ava:118)

at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv

eContext.java:102)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav

a:520)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal

ve.java:109)

at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv

eContext.java:104)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav

a:520)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:16
  1. at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
    
:799)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce

ssConnection(Http11Protocol.java:705)

at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java

:577)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP

ool.java:683)

at java.lang.Thread.run(Thread.java:534)

classe:

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;
import javax.naming.InitialContext;

import javax.naming.NamingException;

import javax.sql.DataSource;

public class Conex {

private final  static String JNDI_NAME = "java:comp/env/jdbc/myoracle";
  /**
   * InitialContext que irá recuperar  o DataSource via JNDI.
   */
 private  static InitialContext ic = null;
  /**
   * O Data Source propriamente dito.
   */
 private  static DataSource ds = null;
   /**
    * String para recuperar o objeto via JNDI;
	*/

	  public Conex() {
	  
	 super();
	 
	  try {      
	      ic = new InitialContext();
	      ds = (DataSource) ic.lookup(JNDI_NAME);
	      System.out.println("teste1");
	    } catch (NamingException e) {
	    	System.out.println("teste2");
	      //TODO: Use um sistema de log adequado
	      e.printStackTrace();
	    }
	  }

	  public static Connection getConnection() {
	    Connection con = null;
	    try {
	    	System.out.println("teste3");
	      if (ds == null || ic == null) {
	        ic = new InitialContext();
	        ds = (DataSource) ic.lookup(JNDI_NAME);
	        System.out.println("teste4");
	      }
	      System.out.println("teste5");
	      con = ds.getConnection();
	      System.out.println("teste6");

	    } catch (NamingException e) {
	    	System.out.println("teste7");
	      e.printStackTrace();
	    } catch (SQLException e) {
	    	System.out.println("teste8");
	      e.printStackTrace();
	    }
	    return con;
	  }

1 Resposta

D

o erro deve estar na sua configuração do DataSource

Criado 13 de maio de 2005
Ultima resposta 13 de mai. de 2005
Respostas 1
Participantes 2