如果JRE路径使用的是 “JDK” 的目录则项目启动会报错,如果使用 “JRE” 的目录则没有问题。
以下是错误信息:
驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“java.security.ProviderException: java.security.NoSuchAlgorithmException: SunTls12MasterSecret KeyGenerator not available”。
[错误] - [主题:主] - [com.jfinal.core.Config.startPlugins()]:插件启动错误:com.jfinal.plugin.activerecord.ActiveRecordPlugin。
java.sql.SQLException:无法从底层数据库获取连接!
com.jfinal.plugin.activerecord.ActiveRecordException:java.sql.SQLException:无法从底层数据库获取连接!
at com.jfinal.plugin.activerecord.TableBuilder.build(TableBuilder.java:55)
at com.jfinal.plugin.activerecord.ActiveRecordPlugin.start(ActiveRecordPlugin.java:226)
at com.jfinal.core.Config.startPlugins(Config) .java:128)
com.jfinal.core.Config.configPluginWithOrder(
Config.java:71 )at com.jfinal.core.Config.configJFinal(Config.java:56)
at com.jfinal.core.JFinal.init(JFinal.java:63)
at com.jfinal.core.JFinalFilter.init(JFinalFilter.java:49)
org.eclipse.jetty.servlet.FilterHolder.doStart(FilterHolder.java) :119)
位于org.eclipse.jetty的org.eclipse.jetty
上的org.eclipse.jetty.start(ServletHandler.jat:724)org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
。 servlet.ServletContextHandler.startContext(ServletContextHandler.java:265)
atg.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java: 706)
at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492)
在org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
在org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
在org.eclipse.jetty.server .Server.doStart(Server.java:277)
在org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
在com.jfinal.server.JettyServerForIDEA.doStart(JettyServerForIDEA.java:133)
在Com.jfinal.server.JettyServerForIDEA.start(JettyServerForIDEA.java:72)
at com.jfinal.core.JFinal.start(JFinal.java:174)
at com.lanchuang.pmcDemo.Application.main(Application.java:122)
引起:java.sql.SQLException:无法从底层数据库获取连接!
在com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:118)
在com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:692)
在com.mchange.v2.c3p0.impl .AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:140)
在com.jfinal.plugin.activerecord.TableBuilder.build(TableBuilder.java:43)
...... 21多个
com.mchange.v2.resourcepool.CannotAcquireResourceException:由造成ResourcePool无法从其主要工厂或来源获取资源。
at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1469)
at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:644)
在com.mchange.v2上的com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:554)
com.mchange.v2.c3P0.impl.C3P0PooledConnectionPool.checkoutAndMarkConnectionInUse(C3P0PooledConnectionPool.java:758)
com.mchange.v2.c3p0.impl .C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:685)
... 23多个
com.microsoft.sqlserver.jdbc.SQLServerException:由造成驱动程序无法通过使用安全套接字层(SSL)加密与SQL服务器建立安全连接。错误:“java.security.ProviderException:java.security.NoSuchAlgorithmException:SunTls12MasterSecret的KeyGenerator不可用”。
在com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:1352)
在com.microsoft.sqlserver.jdbc.TDSChannel .enableSSL(IOBuffer.java:1533)
com.microsoft.sqlserver.jdbc.SQLServerConnection.connect上的com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1042)
位于com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:817)
的com.microsoft.sqlserver.jdbc.SQLServerConnection.connect (SQLServerConnection.java:700)com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:842)
位于
com.mchange的com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:175)
。 v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:220)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:206)
在com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool $ 1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:203)
在com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1138)
在com.mchange.v2.resourcepool .BasicResourcePool.doAcquireAndDecrementPendingAcquiresWithinLockOnSuccess(BasicResourcePool.java:1125)
at com.mchange.v2.resourcepool.BasicResourcePool.access $ 700(BasicResourcePool.java:44)
at com.mchange.v2.resourcepool.BasicResourcePool $ ScatteredAcquireTask.run(BasicResourcePool.java: 1870)
at com.mchange.v2.async.ThreadPoolAsynchronousRunner $ PoolThread.run(ThreadPoolAsynchronousRunner.java:696)
引发者:javax.net.ssl.SSLException:java.security.ProviderException:java.security.NoSuchAlgorithmException:SunTls12MasterSecret KeyGenerator
在sun.security.ssl.SlLS.SILSocketImpl的sun.security.ssl.Alerts.getSSLException(未知来源)
中不可用。
sun.security.ssl.SSLSocketImpl.fatal(未知来源)
的sun.security.ssl.SSLSocketImpl.handleException(未知来源)
sun.security.ssl.SSLSocketImpl.startHandshake(未知来源)
在太阳下的致命(未知来源)。
com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL(IOBuffer.java:1483)中的security.ssl.SSLSocketImpl.startHandshake(未知来源)
... 13更多
引起:java.security.ProviderException:java.security.NoSuchAlgorithmException:sunTls12MasterSecret KeyGenerator
在sun.security.ssl.Handshaker.calculateMasterSecret(未知来源)不在 太阳
下的sun.security.ssl.Handshaker.calculateKeys(未知来源)
。 security.ssl.ClientHandshaker.serverHelloDone(未知来源)
在sun.security.ssl.ClientHandshaker.processMessage(未知来源)
在sun.security.ssl.Handshaker.processLoop(未知来源)
在sun.security.ssl.Handshaker.process_record(未知来源)
sun.security.ssl.SSLSocketImpl.readRecord(未知来源)
sun.security.ssl.SSLSocketImpl.performInitialHandshake(未知来源)
... 16更多
引起:java.security.NoSuchAlgorithmException:sunTls12MasterSecret KeyGenerator 在sun.security的 javax.crypto.KeyGenerator.getInstance(KeyGenerator.java:223)的
javax.crypto.KeyGenerator。<init>(KeyGenerator.java:169)
上不可用
。 ssl.JsseJce.getKeyGenerator(未知来源)
......还有24个
2018-11-21 09:08:06
[ERROR]-[Thread: main]-[com.jfinal.kit.LogKit.error()]: Plugin start error: com.jfinal.plugin.activerecord.ActiveRecordPlugin.
java.sql.SQLException: Connections could not be acquired from the underlying database!
java.lang.RuntimeException: Plugin start error: com.jfinal.plugin.activerecord.ActiveRecordPlugin.
java.sql.SQLException: Connections could not be acquired from the underlying database!
at com.jfinal.core.Config.startPlugins(Config.java:137)
at com.jfinal.core.Config.configPluginWithOrder(Config.java:71)
at com.jfinal.core.Config.configJFinal(Config.java:56)
at com.jfinal.core.JFinal.init(JFinal.java:63)
at com.jfinal.core.JFinalFilter.init(JFinalFilter.java:49)
at org.eclipse.jetty.servlet.FilterHolder.doStart(FilterHolder.java:119)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:724)
at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265)
at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:706)
at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
at org.eclipse.jetty.server.Server.doStart(Server.java:277)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
at com.jfinal.server.JettyServerForIDEA.doStart(JettyServerForIDEA.java:133)
at com.jfinal.server.JettyServerForIDEA.start(JettyServerForIDEA.java:72)
at com.jfinal.core.JFinal.start(JFinal.java:174)
at com.lanchuang.pmcDemo.Application.main(Application.java:122)
Caused by: com.jfinal.plugin.activerecord.ActiveRecordException: java.sql.SQLException: Connections could not be acquired from the underlying database!
at com.jfinal.plugin.activerecord.TableBuilder.build(TableBuilder.java:55)
at com.jfinal.plugin.activerecord.ActiveRecordPlugin.start(ActiveRecordPlugin.java:226)
at com.jfinal.core.Config.startPlugins(Config.java:128)
... 19 more
Caused by: java.sql.SQLException: Connections could not be acquired from the underlying database!
at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:118)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:692)
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:140)
at com.jfinal.plugin.activerecord.TableBuilder.build(TableBuilder.java:43)
... 21 more
Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.
at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1469)
at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:644)
at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:554)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutAndMarkConnectionInUse(C3P0PooledConnectionPool.java:758)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:685)
... 23 more
Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“java.security.ProviderException: java.security.NoSuchAlgorithmException: SunTls12MasterSecret KeyGenerator not available”。
at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:1352)
at com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL(IOBuffer.java:1533)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1042)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:817)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:700)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:842)
at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:175)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:220)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:206)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:203)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1138)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquireAndDecrementPendingAcquiresWithinLockOnSuccess(BasicResourcePool.java:1125)
at com.mchange.v2.resourcepool.BasicResourcePool.access$700(BasicResourcePool.java:44)
at com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask.run(BasicResourcePool.java:1870)
at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:696)
Caused by: javax.net.ssl.SSLException: java.security.ProviderException: java.security.NoSuchAlgorithmException: SunTls12MasterSecret KeyGenerator not available
at sun.security.ssl.Alerts.getSSLException(Unknown Source)
at sun.security.ssl.SSLSocketImpl.fatal(Unknown Source)
at sun.security.ssl.SSLSocketImpl.fatal(Unknown Source)
at sun.security.ssl.SSLSocketImpl.handleException(Unknown Source)
at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
at com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL(IOBuffer.java:1483)
... 13 more
Caused by: java.security.ProviderException: java.security.NoSuchAlgorithmException: SunTls12MasterSecret KeyGenerator not available
at sun.security.ssl.Handshaker.calculateMasterSecret(Unknown Source)
at sun.security.ssl.Handshaker.calculateKeys(Unknown Source)
at sun.security.ssl.ClientHandshaker.serverHelloDone(Unknown Source)
sun.security.ssl.ClientHandshaker.processMessage(Unknown Source)
at sun.security.ssl.Handshaker.processLoop(Unknown Source)
at sun.security.ssl.Handshaker.process_record(Unknown Source)
at sun.security.ssl.SSLSocketImpl .readRecord(未知来源)
在sun.security.ssl.SSLSocketImpl.performInitialHandshake(未知来源)
... 16更
java.security.NoSuchAlgorithmException:SunTls12MasterSecret的KeyGenerator不可用引起
在javax.crypto.KeyGenerator <初始化>(的KeyGenerator。 .java:169)
在
sun.security.ssl.JsseJce.getKeyGenerator(未知来源)的javax.crypto.KeyGenerator.getInstance(KeyGenerator.java:223 )
... 24更多