点击"test configuration"出现错误Error 500--Internal Server Error java.lang.NoClassDefFoundError: com/microsoft/jdbc/base/BaseDriver at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:502)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:250)
at java.net.URLClassLoader.access$100(URLClassLoader.java:54)
at java.net.URLClassLoader$1.run(URLClassLoader.java:193)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:186)
at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:265)
at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:140)
at weblogic.management.console.utils.JDBC.testConnection(JDBC.java:134)
at weblogic.management.console.actions.mbean.JDBCConnectionPoolTestAction.prePerform(JDBCConnectionPoolTestAction.java:108)
at weblogic.management.console.actions.mbean.DoMBeanWizardAction.perform(DoMBeanWizardAction.java:215)
at weblogic.management.console.actions.internal.ActionServlet.doAction(ActionServlet.java:173)
at weblogic.management.console.actions.internal.ActionServlet.doPost(ActionServlet.java:85)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1053)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:387)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6310)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3622)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2569)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
 

解决方案 »

  1.   

    java.lang.NoClassDefFoundError: com/microsoft/jdbc/base/BaseDriver找不到你的数据库驱动,将你的数据库驱动放到你的项目web-info\lib目录下或者是classpath中,或者是weblogic的lib中,不过我估计是你把驱动的名字写错了,我没有见过这个驱动是什么数据库的驱动com/microsoft/jdbc/base/BaseDriver(呵呵,可能是我的见识少了),检查一下你连接数据的类,应该是Class.forName(".....")这句的驱动名错了,你可以去检查一下看看.我也不知道你用的是什么数据库,
    SQLServer的驱动名:com.microsoft.jdbc.sqlserver.SQLServerDriver
    Oracle的驱动名:oracle.jdbc.driver.OracleDriver
    MySql的驱动:org.gjt.mm.mysql.Driver
      

  2.   

    少驱动吧,把驱动microsoft加到classpath中
      

  3.   

    谢谢大家,yanhuaxie我刚配置,还没测试数据库是MS SQL.我在startWebLogic.cmd加了class路径了现在出现我设置的那个登录名无法登陆,信息如下
     [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]用户 'zlw' 登录失败还有我设置3位数密码,按"continue",出现的页面有十几位的密码,登陆不了跟这个有关系吗
     
      

  4.   

    现在出现我设置的那个登录名无法登陆,信息如下
    [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]用户 'zlw' 登录失败
    ---------------------------------------------------------------------------
    SQLServer连接失败,JDBC应该是成功了,只是还无法用“zlw”创建连接
      

  5.   

    现在出现我设置的那个登录名无法登陆,信息如下
    [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]用户 'zlw' 登录失败
    这个说明你的weblogic的连接池已经配置好了,至于<用户 'zlw' 登录失败>,原因可能是你的用户名和密码不匹配造成的."还有我设置3位数密码,按"continue",出现的页面有十几位的密码,登陆不了跟这个有关系吗"
    weblogic中对数据的用户密码的加密过的,他显示的是加密后的密码,所以显示的,只要将你密码修改成你正确的密码,再测试一下就可以了
      

  6.   

    yanhuaxie  改了不行,有别的可能吗
      

  7.   

    配置过程(sqlserver的配置):首先确保数据库的三个驱动在classpath中,此略:
    1 http;//loaclhost:7001/console  输入用户名和密码:
    2 点击mydomain\services\jdbc\connection pools连接
    3 在弹出的页面中点击Configure a new JDBC Connection Pool... 链接(配置一个新的JDBC连接池)
    4 database type: MS SQL Server(选择数据库的类型,你用的是sqlserver的,所以要选他)
      database driver:Microsoft's MS SQL Server Driver (Type 4) Versions:2000(数据
                          库的驱动程序)
         选完后继续(continue)
    5 Name:myJDBC connection pool(连接池的名字,自定义)
      Database Name:testDB(要连接的数据库名字)
      Host Name:192.168.0.10(数据库所在的主机IP)
      Port:1433
      Database User Name:zlw  用户名
      password:123    密码
      Confirm Password:123    确认密码
                           填完后继续下一步(continue)
    6 Test database connection    
          Driver Classname:   com.microsoft.jdbc.sqlserver.SQLServerDriver
          URL:                jdbc:microsoft:sqlserver://192.168.0.10:1433
          Database User Name: zlw
          Password:           ******************
          Confirm Password:   ******************  加密后的密码
          Properties:
              user=zlw
              url=jdbc:microsoft:sqlserver://192.168.0.10:1433
              selectMethod=cursor
              dataSourceName=SQL2000JDBC
              userName=zlw
              databaseName=testDB
              serverName=192.168.0.10然后点击测试测试连接池创建的按纽"test configuration"进行测试,如果出现绿色的succesfull"就表明了创建通过了.按着步骤对照一下你的,将相应的地方修改成你的东西就可以了.
      

  8.   

    Driver Classname:com.microsoft.jdbc.sqlserver.SQLServerDriver
    URL:jdbc:microsoft:sqlserver://192.168.0.2:1433
    Database User Name:zlw
    Password:#############
    Confirm Password:#############
    Properties:user=zlw
    url=jdbc:microsoft:sqlserver://192.168.0.2:1433
    selectMethod=cursor
    userName=zlw
    dataSourceName=SQL2000JDBC
    databaseName=testpool
    serverName=192.168.0.2
    步骤也没错啊,按照楼上说的一样,上面是显示的信息,
    就是还会显示出错
    [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]用户 'zlw' 登录失败。
     
      

  9.   

    我的H:\bea\user_projects\domains\mydomain目录下出现mydomain.log00003 mydomain.log00004 mydomain.log00005 mydomain.log00006文件,是配置不成公的文件吗
      

  10.   

    现在配置是没有问题的了,看来就是你的数据库的问题了。我估计问题出在你安装数据库选择的校验方式选错了。在安装SQLServer 时,一般选择验证方式时,选择的是:“使用windows身份验证和SQL Server身份验证”,并且设置相关用户和密码,而不是“仅使用windows身份验证”,否则就有可能会出现你遇到的问题-- 未与信任 SQL Server 连接相关联,从而拒绝了你的连接。
        你安装sql server的时候,在选择验证方式的时候,是不是选择了“仅使用windows身份验证”??我估计你就是选择了这种方式,导致了你数据库用户和密码不对,sql server拒绝了你的连接,因为选择这种方式的时候,没有记错的话,应该是使用你的windows的系统用户和密码进行校验的,即在连接数据库的用户和密码必须和你登陆windows的一样(如administrator,admin),而不是你数据库设置的帐户和密码(如zlw,123)!!!!
        你可以先试试,将现在的weblogic中连接数据库的用户和密码修改成你windows的登陆帐户和密码看看!    如果不行,我建议你重新装sql server,然后在验证方式中选择“使用windows身份验证和SQL Server身份验证”,这样,你就可以使用你的数据库设置的密码,如“zlw,123”。我5:30下班,在这之前在线等你的答案。
      

  11.   

    会不会XP系统有关系呢,我也打了SQLSP3了
      

  12.   

    重装SQL无法用"域用户账户登陆",只能使用"本地系统账户登陆"这是不是对后面连接数据库有影响
      

  13.   

    谢谢大家帮助,特别是yanhuaxie耐心的解答我解决的办法是,重新安装SQL,安装时注意记住你输入的用户名sa和密码,以后用它进行连接数据库
     打上补丁sp4,
    安装Microsoft SQL Server 2000 Driver for JDBC驱动,设置路径CLASSPATH,进入设置界面