`
sunzhiqiang1984
  • 浏览: 126838 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类

tomcat 运行时出现Cannot create PoolableConnectionFactory (到主机 的 TCP/IP 连接失败...

阅读更多

    将一个Java Web应用转移到一台新的PC机上供测试使用。配置环境为:

  1. JDK 1.6.0
  2. Tomcat 5.5
  3. SQL Server 2005

    其中SQL Server 2005为新安装在此机器上。将Web应用部署到Tomcat的webapps文件夹后运行启动脚本,开始并未注意到控制台的一些提示信息。Tomcat启动后在地址栏中输入登录路径,登录界面成功出现。此时在登录框中输入正确的用户名与密码,系统提示错误。

    注意到Tomcat的控制台出现异常提示:

Cannot create PoolableConnectionFactory (到主机  的 TCP/IP 连接失败。 java.net.ConnectException: Connection refused: connect)
Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: 到主机  的 TCP/IP 连接失败。 java.net.ConnectException: Connection refused: connect

 

错误提示很明显,到主机的TCP/IP连接失败。就是与SQL Server的TCP/IP连接失败。打开Microsoft SQL Server 2005-->配置工具-->SQL Server Configuration Manager,看到左侧的'SQL Server 2005 网络配置',点击'SQLEXPRESS的协议',检查右侧的'TCP/IP'协议的状态是否为已启用。然后双击'TCP/IP'协议,弹出属性对话框,切换到'IP地址'选项卡。展开'IPAll',检查'TCP端口'是否是Web应用中请求连接数据库的端口号,一般端口号默认为1433,若没有请填入。对话框确定后会提示停止并重启相应服务,照做即可。


 

    其实Tomcat抛出异常的原因就是编译时无法连接到相应的数据源,根本原因就是找不到连接数据库的TCP端口号,而在Web应用中又配置了相应的数据源,故在编译时抛出异常。其实在上诉异常之前Tomcat早已抛出异常,只是一闪而过没有细心看罢了。因为Web应用采用SSH框架,故Hibernate需要绑定数据实体,既然没有端口号更无从谈起绑定了,故Tomcat抛出了

AbandonedObjectPool is used (org.apache.tomcat.dbcp.dbcp.AbandonedObjectPool@f70ee1)
   LogAbandoned: false
   RemoveAbandoned: true
   RemoveAbandonedTimeout: 2

    希望此文对你有帮助,如果有不对的地方请留言给我。
 

  • 大小: 43.6 KB
分享到:
评论
1 楼 albrich 2011-12-14  

相关推荐

    sql server 2005设置sql身份验证 Cannot create PoolableConnectionFactory (用户 'sa' 登录失败。该

    在SQL Server 2005中,"Cannot create PoolableConnectionFactory (用户 'sa' 登录失败。该用户与可信 SQL Server 连接无)" 错误通常表明在尝试使用SQL Server的身份验证方式登录时遇到了问题。这篇博客文章可能详细...

    用户 'sa' 登录失败。该用户与可信 SQL Server 连接无关联

    用户 'sa' 登录失败。该用户与可信 SQL Server 连接无关联

    WEB-INF中的web.xml中之前增加以下配置:

    确认SQL Server 2000可以远程连接,除了开放1433端口外,还要升级数据库到SP3或SP4,否则连接会发出SQLNestedException:Cannot create PoolableConnectionFactory ([Microsoft][SQLServer 2000 Driver for JDBC]...

    学习有关连接池的使用

    在Java开发中,连接池是一种优化数据库访问性能的重要技术,它可以高效地管理和重用数据库连接,从而避免频繁创建和销毁连接带来的性能开销。本文将深入讲解如何在Java环境中,特别是Tomcat服务器中配置和使用连接池...

    RabbitMQ客户端连接池实现代码可直接复制项目中使用

    // 处理归还连接时可能出现的异常 } } } // sendMessage 和 getMessage 方法 public static void sendMessage(String exchange, String routingKey, String message) throws Exception { Connection conn = ...

    dbcp 1.2.2

    Apache Commons DBCP 1.2.2 是一个在Java应用程序中管理数据库连接池的开源库。...然而,考虑到软件的更新迭代,建议评估使用更现代的连接池库,如HikariCP或Tomcat JDBC Pool,以获得更好的性能和特性支持。

    kettle常见问题

    kettle常见问题kettle常见问题kettle常见问题kettle常见问题kettle常见问题

    连接不到数据库【转】整理.pdf

    9. **DNS解析问题**:如果数据库的主机名是通过DNS解析的,确保DNS服务器工作正常,能正确解析主机名到IP地址。 10. **SSL配置**:如果数据库配置了SSL连接,确保客户端支持并正确配置了SSL证书和密钥。 在解决这...

    数据库连接池.pdf

    - **创建PoolableConnectionFactory**:这是DBCP的核心,它将普通数据库连接转换为池化的连接,可以被对象池管理和回收。 - **注册PoolingDriver**:`PoolingDriver`是DBCP提供的JDBC驱动,它允许通过特定的URL...

    c3p0连接池与源码

    源码中的关键类如`PooledConnectionManager`、`PoolableConnectionFactory`和`PoolConfig`分别对应连接管理、池化连接工厂和配置信息。 **五、最佳实践** 1. **合理设置参数**: 根据应用的并发量和数据库性能调整...

    Jmeter连接Mysql数据库实现过程详解

    在执行JDBC Request之后,我们可能会出现一个报错:java.sql.SQLException: Cannot create PoolableConnectionFactory (The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more...

    关于JDBC连接池的java类

    Java JDBC连接池是一种高效管理数据库连接的技术,它允许应用程序重复使用已经建立的数据库连接,而不是每次需要时都创建新的连接。这显著提高了性能并减少了系统资源的消耗,尤其是在高并发的环境中。本类库提供了...

    dbcp数据库连接池

    数据库连接池的基本原理是预先创建并维护一定数量的数据库连接,当应用需要时,可以从池中获取连接,使用完毕后归还,而不是每次操作都创建新的连接。 **连接池的重要性**: 1. **资源复用**:通过重用已建立的...

    apache数据库连接池包

    Apache 数据库连接池,通常指的是 Apache 的开源项目 Commons DBCP (Database Connection Pool) 或者是更现代的 Apache Tomcat JDBC 连接池 (Tomcat DataSource Executor,也称为 C3P0、DBCP2)。这些组件是为 Java ...

    commons-dbcp-1.0-src.zip

    通过合理设置这些参数,可以确保连接池的健康运行,避免资源浪费和潜在的数据库连接泄漏。 5. **与其他连接池的比较**: 虽然Apache Commons DBCP在早期被广泛应用,但随着技术的发展,出现了更多性能更优的数据库...

    自己封装的dbcp连接池封装,可以同时连接多个数据库

    7. **异常处理**:在实际应用中,必须处理可能出现的各种异常,如连接池已满、数据库连接失败等情况,确保程序的健壮性。 8. **监控与日志**:为了方便问题排查和性能优化,连接池通常会提供监控接口和日志功能,...

    C3P0使用,C3P0源码及实例

    源码中的关键类有`ComboPooledDataSource`(数据源)、`PoolableConnectionFactory`(连接工厂)和`PooledConnection`(池化的连接),它们共同协作完成连接池的管理。 **总结** C3P0作为一个成熟的连接池组件,...

    dbcp jar包

    4. **回收与维护**:DBCP 会检查归还的连接是否健康,如果出现问题则会关闭并替换,同时定期进行连接的检查和清理,以防止死连接的存在。 5. **关闭连接池**:在应用关闭时,DBCP 会关闭所有的数据库连接,并释放...

    commons-pool 等jar包

    DBCP(Database Connection Pool)是Apache Jakarta项目中的一个子项目,它利用了commons-pool对象池机制来实现数据库连接的复用,从而减少创建和释放数据库连接时的开销。Tomcat,一个广泛使用的Java应用服务器,...

    数据库连接包

    3. **故障恢复**:连接池可以检测连接的健康状况,当检测到有问题的连接时,会自动隔离并重新创建新的连接。 4. **伸缩性**:根据系统负载动态调整连接池大小,适应不同规模的应用需求。 Apache Commons DBCP提供了...

Global site tag (gtag.js) - Google Analytics