初学Struts和Hibernate,在运行一个小例子时在登录时遇到错误,望各位帮帮忙
type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception javax.servlet.ServletException: Cannot open connection
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:516)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:423)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
tool.ActionServlet.process(ActionServlet.java:17)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause org.hibernate.exception.JDBCConnectionException: Cannot open connection
org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:72)
org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29)
org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:363)
org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:122)
org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:125)
org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57)
org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1309)
service.UsersDao.logonUsers(UsersDao.java:75)
hr.UsersAction.logon(UsersAction.java:107)
hr.UsersAction.execute(UsersAction.java:37)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
tool.ActionServlet.process(ActionServlet.java:17)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
com.microsoft.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source)
com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)
com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
java.sql.DriverManager.getConnection(Unknown Source)
java.sql.DriverManager.getConnection(Unknown Source)
org.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:110)
org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:360)
org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:122)
org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:125)
org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57)
org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1309)
service.UsersDao.logonUsers(UsersDao.java:75)
hr.UsersAction.logon(UsersAction.java:107)
hr.UsersAction.execute(UsersAction.java:37)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
tool.ActionServlet.process(ActionServlet.java:17)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Connection refused: connect
com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
com.microsoft.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source)
com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)
com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
java.sql.DriverManager.getConnection(Unknown Source)
java.sql.DriverManager.getConnection(Unknown Source)
org.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:110)
org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:360)
org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:122)
org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:125)
org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57)
org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1309)
service.UsersDao.logonUsers(UsersDao.java:75)
hr.UsersAction.logon(UsersAction.java:107)
hr.UsersAction.execute(UsersAction.java:37)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
tool.ActionServlet.process(ActionServlet.java:17)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.23 logs

解决方案 »

  1.   

    spk3,spk4补丁包打一下试 下看
      

  2.   

    CMD命令窗口下:netstat -an查看有没有1433字样.没有的话打sp3或者sp4补丁.把驱动包放到Tomcat(是它不?)的common/lib下试试.
      

  3.   

    看看相关的hibernate配置文件和sql server2000的驱动有么?
      

  4.   

    [Microsoft][SQLServer 2000 Driver for JDBC]Connection refused: connect 
    错误很明显是没有连上数据库,给你个竹大论坛上的参考地址,你看下吧:
    http://www.java2000.net/viewthread.jsp?tid=394
      

  5.   

    你JDBC参数没配对,建议参考官方文档。
      

  6.   

    我在服务管理器上面的服务器为009ADB7927834EE,请问应该怎样修改
      

  7.   

    驱动明显是找到了 否则错误是class not found
    现在的问题是不能建立和数据库的连接 看你的sql server是否用sa验证 如果使用的是windows登陆验证 则要保证你是用Administrator登陆系统
      

  8.   

    有时候需要查看SQLSERVER有没有设置安全性中的访问
    设置为SQL和WINDOWS登陆