开发者社区 问答 正文

jfinal连接sqlserver2000时 报错 400 请求报错 

代码部分,不够详细还望指出。

程序开始,加载配置properties文件

配置文件内容

工程lib目录下相应的jar包

启动,需要大概10秒之后才出现
控制台信息:
Starting JFinal 1.5 Starting scanner at interval of 5 seconds. Starting web server on port: 80

2014-02-10 17:17:32 [WARN]-[Thread: Timer-0]-[com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector.run()]: com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@17555b8 -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks!

2014-02-10 17:17:32 [WARN]-[Thread: Timer-0]-[com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector.run()]: com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@17555b8 -- APPARENT DEADLOCK!!! Complete Status:  Managed Threads: 3 Active Threads: 3 Active Tasks:  com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1936fc6 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0) com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@8f612f (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2) com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@13579e0 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1) Pending Tasks:  com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1d48085 com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@419cb3 com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@196bf64 com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1ef4d69 com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1c332b8 com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@36f0c9 com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@fa3f1b Pool thread stack traces: Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1,5,main] java.net.DualStackPlainSocketImpl.connect0(Native Method) java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79) java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) java.net.Socket.connect(Socket.java:579) java.net.Socket.connect(Socket.java:528) java.net.Socket.<init>(Socket.java:425) java.net.Socket.<init>(Socket.java:208) 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) com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134) com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182) com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171) com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137) com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014) com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32) com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810) com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547) Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2,5,main] java.net.DualStackPlainSocketImpl.connect0(Native Method) java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79) java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) java.net.Socket.connect(Socket.java:579) java.net.Socket.connect(Socket.java:528) java.net.Socket.<init>(Socket.java:425) java.net.Socket.<init>(Socket.java:208) 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) com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134) com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182) com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171) com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137) com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014) com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32) com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810) com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547) Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0,5,main] java.net.DualStackPlainSocketImpl.connect0(Native Method) java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79) java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) java.net.Socket.connect(Socket.java:579) java.net.Socket.connect(Socket.java:528) java.net.Socket.<init>(Socket.java:425) java.net.Socket.<init>(Socket.java:208) 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) com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134) com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182) com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171) com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137) com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014) com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32) com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810) com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)

展开
收起
kun坤 2020-05-28 16:32:14 601 分享 版权
1 条回答
写回答
取消 提交回答
  • 端口是不是有问题,看看远程数据库那台主机上的端口是不是1433######是1433###### 连接非MySQL数据库时要指定方言:arp.setDialect(new SqlServerDialect());
    public void configPlugin(Plugins me) { //--装载数据库连接池插件-- // 配置C3p0数据库连接池插件 C3p0Plugin c3p0Plugin = new C3p0Plugin(PropKit.get("jdbc.url"), PropKit.get("jdbc.username"), PropKit.get("jdbc.password").trim()); //配置数据库驱动,MySQL可不用设置 c3p0Plugin.setDriverClass(PropKit.get("jdbc.driverClassName")); me.add(c3p0Plugin);

    // 配置ActiveRecord插件 ActiveRecordPlugin arp = new ActiveRecordPlugin(c3p0Plugin); me.add(arp); arp.setShowSql(PropKit.getBoolean("devMode", false)); //输出SQL语句

    // 配置数据库方言 //arp.setDialect(new MysqlDialect()); //arp.setDialect(new OracleDialect()); arp.setDialect(new SqlServerDialect());

    // 配置属性名(字段名)大小写不敏感容器工厂  For Oracle //arp.setContainerFactory(new CaseInsensitiveContainerFactory()); 

    //--装载EhCache缓存插件-- me.add(new EhCachePlugin());

    arp.addMapping("HrDept", "DeptID", HrDept.class); // 映射HrDept表到 HrDept模型 arp.addMapping("HrEmployee", "EmplID", HrEmployee.class); arp.addMapping("EquFinger", "EmplID", EquFinger.class); arp.addMapping("BrushLog", "ID", BrushLog.class); }

    ######一般这样都是数据库连接问题,url,用户名密码,数据库权限等等等

    2020-05-29 11:12:12
    赞同 展开评论