Hi,

I've got an implementation of a plugin Broker that uses an underlying jdbc 
connection via the dbcp implementation.

I need to pass a property to the DriverManager.getConnection(String url, 
Properties props) method.

I've looked for how a special property can be configured and I'm stuck. I'm 
passing the URL via a variable on the command line. 
-Dopenjpa.ConnectionURL="jdbc:mysql://localhost:13021/test" Maybe there is a 
way to pass extra connection properties either via command line or via the 
broker?

Any ideas?

Thanks,

Craig

<openjpa-2.2.2-r422266:1468616 nonfatal general error> 
org.apache.openjpa.persistence.PersistenceException: There were errors 
initializing your configuration: <openjpa-2.2.2-r422266:1468616 fatal user 
error> org.apache.openjpa.util.UserException: A connection could not be 
obtained for driver class "com.mysql.jdbc.Driver" and URL 
"jdbc:mysql://localhost:13021/test".  You may have specified an invalid URL.
        at 
org.apache.openjpa.jdbc.schema.DataSourceFactory.newConnectException(DataSourceFactory.java:255)
        at 
org.apache.openjpa.jdbc.schema.DataSourceFactory.installDBDictionary(DataSourceFactory.java:241)
        at 
org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.getConnectionFactory(JDBCConfigurationImpl.java:733)
        at sun.reflect.GeneratedMethodAccessor25.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at 
org.apache.openjpa.lib.conf.ConfigurationImpl.instantiateAll(ConfigurationImpl.java:306)
        at 
org.apache.openjpa.conf.OpenJPAConfigurationImpl.instantiateAll(OpenJPAConfigurationImpl.java:1670)
        at 
org.apache.openjpa.kernel.AbstractBrokerFactory.makeReadOnly(AbstractBrokerFactory.java:652)
        at 
org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:203)
        at 
org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:156)
        at 
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:227)
        at 
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:154)
        at 
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:60)
        at 
com.mysql.clusterj.jpatest.SingleEMTestCase.setUp(SingleEMTestCase.java:42)
        at 
com.mysql.clusterj.jpatest.SingleEMFTestCase.setUp(SingleEMFTestCase.java:55)
        at 
com.mysql.clusterj.jpatest.SingleEMTestCase.setUp(SingleEMTestCase.java:35)
        at junit.framework.TestCase.run(TestCase.java:52)
        at 
com.mysql.clusterj.jpatest.PersistenceTestCase.run(PersistenceTestCase.java:104)
        at junit.framework.TestSuite.run(TestSuite.java:125)
        at junit.textui.TestRunner.run(TestRunner.java:46)
        at testsuite.clusterj.AllTests.main(AllTests.java:150)
Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot create 
PoolableConnectionFactory (Communications link failure

The last packet successfully received from the server was 206 milliseconds ago. 
 The last packet sent successfully to the server was 199 milliseconds ago.)
        at 
org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549)
        at 
org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1388)
        at 
org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
        at 
org.apache.openjpa.jdbc.schema.DBCPDriverDataSource.getDBCPConnection(DBCPDriverDataSource.java:74)
        at 
org.apache.openjpa.jdbc.schema.AutoDriverDataSource.getConnection(AutoDriverDataSource.java:42)
        at 
org.apache.openjpa.jdbc.schema.SimpleDriverDataSource.getConnection(SimpleDriverDataSource.java:76)
        at 
org.apache.openjpa.lib.jdbc.DelegatingDataSource.getConnection(DelegatingDataSource.java:118)
        at 
org.apache.openjpa.lib.jdbc.DecoratingDataSource.getConnection(DecoratingDataSource.java:93)
        at 
org.apache.openjpa.jdbc.schema.DataSourceFactory.installDBDictionary(DataSourceFactory.java:233)
        ... 20 more
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: 
Communications link failure

The last packet successfully received from the server was 206 milliseconds ago. 
 The last packet sent successfully to the server was 199 milliseconds ago.
        at sun.reflect.GeneratedConstructorAccessor46.newInstance(Unknown 
Source)
        at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)
        at 
com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:989)
        at 
com.mysql.jdbc.ExportControlled.transformSocketToSSLSocket(ExportControlled.java:175)
        at com.mysql.jdbc.MysqlIO.negotiateSSLConnection(MysqlIO.java:4901)
        at 
com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1659)
        at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1226)
        at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2194)
        at 
com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2225)
        at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2024)
        at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:779)
        at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
        at sun.reflect.GeneratedConstructorAccessor38.newInstance(Unknown 
Source)
        at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)
        at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:389)
        at 
com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:330)
        at 
org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38)
        at 
org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:582)
        at 
org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1556)
        at 
org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1545)
        ... 28 more
Caused by: javax.net.ssl.SSLException: Server selected improper ciphersuite 
SSL_RSA_WITH_RC4_128_MD5
        at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
        at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1916)
        at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:279)
        at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:269)
        at 
sun.security.ssl.ClientHandshaker.serverHello(ClientHandshaker.java:531)
        at 
sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:203)
        at sun.security.ssl.Handshaker.processLoop(Handshaker.java:913)
        at sun.security.ssl.Handshaker.process_record(Handshaker.java:849)
        at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1035)
        at 
sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1344)
        at 
sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1371)
        at 
sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1355)
        at 
com.mysql.jdbc.ExportControlled.transformSocketToSSLSocket(ExportControlled.java:160)
        ... 46 more

        at 
org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:218)
        at 
org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:156)
        at 
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:227)
        at 
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:154)
        at 
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:60)
        at 
com.mysql.clusterj.jpatest.SingleEMTestCase.setUp(SingleEMTestCase.java:42)
        at 
com.mysql.clusterj.jpatest.SingleEMFTestCase.setUp(SingleEMFTestCase.java:55)
        at 
com.mysql.clusterj.jpatest.SingleEMTestCase.setUp(SingleEMTestCase.java:35)
        at junit.framework.TestCase.run(TestCase.java:52)
        at 
com.mysql.clusterj.jpatest.PersistenceTestCase.run(PersistenceTestCase.java:104)
        at junit.framework.TestSuite.run(TestSuite.java:125)
        at junit.textui.TestRunner.run(TestRunner.java:46)
        at testsuite.clusterj.AllTests.main(AllTests.java:150)
Craig L Russell
[email protected]

Reply via email to