请教。在ejb中用DataSource连接数据库,报错!

04-10-22 maple_0702

我在ejb中用直连方式没有问题。

用DataSource就不行,我的code:

public Connection getConnection(){

Connection con = null;

DataSource ds = null;

try{

InitialContext ctx = new InitialContext();

System.out.println("ccccccccccccccccc");

ds = (DataSource)ctx.lookup("java:comp/env/estore");

System.out.println("dddddddddddddddd");

con = ds.getConnection();

System.out.println("eeeeeeeeeeeeeeeeeeeee");

}

catch(Exception e){

e.printStackTrace();

}

return con;

}

执行不到System.out.println("eeeeeeeeeeeeeeeeeeeee");

抛出的异常:

java.lang.NoClassDefFoundError: weblogic/jdbc/wrapper/PoolConnection

java.sql.SQLException: Cannot obtain connection: driverURL = jdbc:weblogic:pool:estoreConn

ectionPool, props = {enableTwoPhaseCommit=false, jdbcTxDataSource=true, connectionPoolID=e

storeConnectionPool, dataSourceName=estoreDataSource}.

banq
2004-10-25 13:49

需要配置Datasource

maple_0702
2004-10-26 10:24

连接池和数据源配置没有问题

连接池配置:

Name: estoreConnectionPool

URL:jdbc:mysql://localhost:3306/estore

Driver Classname:com.mysql.jdbc.Driver

Properties:user=root

数据源配置:

JNDI:estore

选择的连接池:estoreConnectionPool

我也修改过启动脚本,把mysql的jdbc驱动加入classpath路径中;

而且在weblogic我建的域选择的是“D:\jdk1.4”

我把jdbc驱动放到了D:\jdk1.4\jre\lib\ext下

banq
2004-10-31 20:13

换JBoss试验看看,注意DataSource的JNDI名称特殊写法

newold
2004-10-31 22:39

mysql的驱动weblogic没有找到,需要在startweblogic.bat的classpath加入

2Go 1 2 下一页