Cannot create PoolableConnectionFactory (Access denied for user ''@'localhost' (using password: YES)) 很明显,访问数据库错误,用户名为空,有密码比较奇怪,是不是url写错了。

解决方案 »

  1.   

        <data-source key="datas" type="org.apache.commons.dbcp.BasicDataSource">
          <set-property property="password" value="root" />
          <set-property property="minCount" value="1" /> 果然没看到 user
      

  2.   

    <set-property property="minCount" value="1" /> 
          <set-property property="maxCount" value="10" /> 
          <set-property property="userName" value="root" /> 有username啊,我把这个属性改为user,username,userName都试过了。都不行。
    还有下面
    <set-property property="driverClassName" value="com.mysql.jdbc.Driver" /> 
    这个属性,我改过driverClassName,driverClass,也试过,也不行。
    因为网上有人数过,是user或username,driverClassName或driverClass啊!
      

  3.   

    还有我的mysql的帐号和密码都为root,这个没有错。
      

  4.   

          <set-property property="user" value="sa" />
    你写的是 
          <set-property property="userName" value="root" /> 
      

  5.   

    不是的,<set-property property="username" value="root" /> 
    是正确的,用user是myeclipse自动生成的一个bug。
      

  6.   

    请高手帮忙看一下是什么问题,先谢谢了了。
    java.lang.reflect.InvocationTargetException 
    这个究竟是什么异常
      

  7.   

    错误原因是没有给新加的用户授权,新加的用户是不能马上生效,需要重启服务或是直接给新用户授权使之生效:
    mysql> grant all on *.* to root@'localhost' identified by 'root';
    Query OK, 0 rows affected (0.04 sec)#生效新加用户权限
    mysql> flush privileges;
    Query OK, 0 rows affected (0.03 sec)一开始我也以为是你的用户名不对,后来看了baidu答案你自己试试,看看对不对!
      

  8.   

    我重启电脑了啊,还是出现这个错误。
    我按楼上的方法试过了,还是这样。
    而且我的是root用户啊,没有新建用户!!
    天哪我快疯了。
      

  9.   

    java:comp/env/jdbc
       jndi的value值有问题呢??
      -------------------------
        呵呵
      不是很清楚 
       
      

  10.   

    这三个文件必须要放在你工程的lib下面commons-collections.jar、commons-dbcp.jar、commons-pool.jar
    否则失败,我看你少个文件
    另外如果放在tomcat下面那必须是在服务器上配置的数据源才有效