importjava.sql.Connection;importjava.sql.SQLException;importorg.apache.log4j.Logger;importcom.mchange.v2.c3p0.ComboPooledDataSource;publicclassConexaoUtil{/** * A singleton that represents a pooled datasource. It is composed of a C3PO * pooled datasource. Can be changed to any connect pool provider */privateComboPooledDataSourcecpds;privatestaticConexaoUtilconexao;privatestaticLoggerlog=Logger.getLogger(Connection.class);privateStringurl="jdbc:postgresql://localhost:5432/banco_dados";privateStringusuario="admin";privateStringsenha="admin";privateIntegeracquireIncrement=10;privateIntegerinitialPoolSize=10;privateIntegermaxPoolSize=100;privateIntegerminPoolSize=10;privateIntegermaxStatements=100;privateConexaoUtil()throwsSQLException{// Configuração do banco de dados log.info("Reading datasource.properties from classpath");cpds=newComboPooledDataSource();cpds.setJdbcUrl(url);cpds.setUser(usuario);cpds.setPassword(senha);cpds.setInitialPoolSize(initialPoolSize);cpds.setAcquireIncrement(acquireIncrement);cpds.setMaxPoolSize(maxPoolSize);cpds.setMinPoolSize(minPoolSize);cpds.setMaxStatements(maxStatements);}publicstaticConexaoUtilgetInstance(){if(conexao==null){try{conexao=newConexaoUtil();}catch(SQLExceptione){// TODO Auto-generated catch blocke.printStackTrace();}}returnconexao;}publicConnectiongetConnection(){try{returnthis.cpds.getConnection();}catch(SQLExceptione){e.printStackTrace();returnnull;s}}publicvoidfecharConexao(Connectioncon){try{if(con!=null){con.close();}}catch(SQLExceptione){// TODO Auto-generated catch blocke.printStackTrace();}}}
rodrigo.uchoa
Tenta colocar a pilha de erros completa.
C
Cleuber_Jose
Opa,
Está dando NullPointerException devido ao primeiro erro, pois o método getConnection() está retornando null
Estranho é que no tomcat 6 funciona, sem problemas
Foi só adicionar o DriverClass do banco e tratar a nova exceção gerada.
Obrigado pela atenção!
importjava.sql.Connection;importjava.sql.SQLException;importorg.apache.log4j.Logger;importcom.mchange.v2.c3p0.ComboPooledDataSource;publicclassConexaoUtil{/** * A singleton that represents a pooled datasource. It is composed of a C3PO * pooled datasource. Can be changed to any connect pool provider */privateComboPooledDataSourcecpds;privatestaticConexaoUtilconexao;privatestaticLoggerlog=Logger.getLogger(Connection.class);privateStringurl="jdbc:postgresql://localhost:5432/banco_dados";privateStringusuario="admin";privateStringsenha="admin";privateIntegeracquireIncrement=10;privateIntegerinitialPoolSize=10;privateIntegermaxPoolSize=100;privateIntegerminPoolSize=10;privateIntegermaxStatements=100;privateStringdriverClass="org.postgresql.Driver";privateConexaoUtil()throwsSQLException{// Configuração do banco de dados log.info("Reading datasource.properties from classpath");cpds=newComboPooledDataSource();cpds.setJdbcUrl(url);cpds.setUser(usuario);cpds.setPassword(senha);cpds.setInitialPoolSize(initialPoolSize);cpds.setAcquireIncrement(acquireIncrement);cpds.setMaxPoolSize(maxPoolSize);cpds.setMinPoolSize(minPoolSize);cpds.setMaxStatements(maxStatements);cpds.setDriverClass(driverClass);}publicstaticConexaoUtilgetInstance(){if(conexao==null){try{conexao=newConexaoUtil();}catch(SQLExceptione){// TODO Auto-generated catch block e.printStackTrace();}catch(PropertyVetoExceptione){// TODO Auto-generated catch blocke.printStackTrace();}}returnconexao;}publicConnectiongetConnection(){try{returnthis.cpds.getConnection();}catch(SQLExceptione){e.printStackTrace();returnnull;s}}publicvoidfecharConexao(Connectioncon){try{if(con!=null){con.close();}}catch(SQLExceptione){// TODO Auto-generated catch block e.printStackTrace();}}}