ds = (DataSource)ctx.lookup("java:comp/env/estore");
                              |
                              |
                            这里直接定位你的dataSource名称

解决方案 »

  1.   

    一定是你的连接池没有设置好,
    大家说的是consel下的
      

  2.   

    "java:comp/env/estore"这仅仅是一个数据库的映射,并不是数据库
      

  3.   

    Name: estoreConnectionPool 
    URL:jdbc:mysql://localhost:3306/estore
    Driver Classname:com.mysql.jdbc.Driver
    Properties:user=root
    这是在weblogic的console里的配置,请各位指点。
      

  4.   

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

  5.   

    试过了,不行!而且在weblogic我建的域选择的是“D:\jdk1.4”
    我把jdbc驱动放到了D:\jdk1.4\jre\lib\ext下
      

  6.   

    看看你的xml配置文件jndi和lookup的内容是否一致
      

  7.   

    是一致的,
    而且我觉得lookup没有问题,
    因为执行System.out.println("dddddddddddddddd")没有问题,这一句之前也没有异常,而是在con = ds.getConnection();报的异常
      

  8.   

    就是Lookup没有连接成功,你在server\default\deploy下创建oracle.xml(名字任意)才可以
      

  9.   

    To lanlanq(努力^^成熟之路):
    你说的,我不明白是什么意思,请明示。
    而且我的weblogic(是8.1.3)下没有那个目录.
      

  10.   

    ds = (DataSource)ctx.lookup("java:comp/env/estore");中的""java:comp/env/estore"改成JNDI的名字吧。JNDI的名字,你可以菜单查看下“VIEW JNDI NAME"选项。
      

  11.   

    我觉得lookup没有问题,
    因为执行System.out.println("dddddddddddddddd")没有问题,这一句之前也没有异常,
    而是在con = ds.getConnection();报的异常Name: estoreConnectionPool 
    URL:jdbc:mysql://localhost:3306/estore
    Driver Classname:com.mysql.jdbc.Driver
    Properties:user=root
    这是在weblogic的console里的配置
      

  12.   

    说得实在是太清楚了,你不看异常的吗
    java.lang.NoClassDefFoundError: weblogic/jdbc/wrapper/PoolConnection
    这个类没有找到,但是我觉得你选择的驱动有问题,不必要让weblogic的类掺和进来
      

  13.   

    所以,兄弟,jdbc并不是很通用的,不同的数据库,不同的jdbc驱动,实现得都不太一样,甚至不同的app server也有不同的影响,特别是在大字段这部分,所以是非常恶心的,非常恶心
      

  14.   

    ds = (DataSource)ctx.lookup("java:comp/env/estore");中的""java:comp/env/estore"改成JNDI的名字吧。JNDI的名字,你可以菜单查看下“VIEW JNDI NAME"选项。
    同意这个
      

  15.   

    问题已解决!
    这是我的总结,
    http://community.csdn.net/Expert/topic/3525/3525573.xml?temp=4.969424E-02
      

  16.   

    还有,
    lookup("estore");
    lookup("java:comp/env/estore");
    3.x版本以后都可以。mm.mysql-2.0.4-bin.jar这个版本必须用lookup("java:comp/env/estore");很感谢以上各位的回答,但你们都没有仔细看我的代码
    很明显问题不在lookup,而是ds.getConnection();
      

  17.   

    java的异常又不是猪,它说得清清楚楚的,java.lang.NoClassDefFoundError: weblogic/jdbc/wrapper/PoolConnection
    就是你用的连接池的驱动找不到了。建议你不用mysql自己提供的驱动,不要用weblogic的。