At this point there's not much I can do to help... I guess you should
try writing a simple JDBC example to see that the property makes a
difference outside Cayenne/DBCP. If it does, check your implementation
of the factory, if it doesn't - check the Oracle setup.
Andrus
On Jun 19, 2008, at 3:13 PM, Elena Doyle wrote:
Andrus,
I actually got the custom factory to work as in if it is not a
secure connection, I can connect
using my custom class.
But if I try to go to a secure site, I get this
Caused by: java.sql.SQLException: Io exception: Remote host closed
connection during handshake
at
oracle
.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at
oracle
.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at
oracle
.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387)
at
oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:
441)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
at
oracle
.jdbc
.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
at
org
.apache
.commons
.dbcp
.DriverConnectionFactory
.createConnection(DriverConnectionFactory.java:38)
at
org
.apache
.commons
.dbcp
.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:
294)
at
org
.apache
.commons
.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:
1247)
at
org
.apache
.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:
1221)
Which is what I get if I do not do extra properties.
-----Original Message-----
From: Andrus Adamchik [mailto:[EMAIL PROTECTED]
Sent: 18 June 2008 18:07
To: [email protected]
Subject: Re: Configuring SSL
Ah... DBCP depends on another Commons library. You will need
commons- pool jars as well:
http://commons.apache.org/pool/
Andrus
On Jun 18, 2008, at 7:58 PM, Elena Doyle wrote:
I have ran it with the cayenne.xml pointing to my custom factory
class
and I got
java.lang.NoClassDefFoundError: org/apache/commons/pool/impl/
GenericObjectPool
at
custom
.oracle
.access
.OracleSSLDataSourceFactory
.getDataSource(OracleSSLDataSourceFactory.java:39)
at
org
.apache
.cayenne
.conf
.RuntimeLoadDelegate.shouldLoadDataNode(RuntimeLoadDelegate.java:297)
at org.apache.cayenne.conf.ConfigLoader
$NodeHandler.init(ConfigLoader.java:330)
at org.apache.cayenne.conf.ConfigLoader
$DomainHandler.startElement(ConfigLoader.java:219)
at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1672)
at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:667)
at org.apache.crimson.parser.Parser2.parse(Parser2.java:337)
at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:
448)
at
org.apache.cayenne.conf.ConfigLoader.loadDomains(ConfigLoader.java:
78)
at
org
.apache
.cayenne
.conf.DefaultConfiguration.initialize(DefaultConfiguration.java:161)
at
org
.apache
.cayenne
.conf.Configuration.initializeSharedConfiguration(Configuration.java:
276)
at
org
.apache
.cayenne
.conf.Configuration.initializeSharedConfiguration(Configuration.java:
258)
at
org
.apache
.cayenne
.conf.Configuration.initializeSharedConfiguration(Configuration.java:
239)
at
org
.apache
.cayenne
.conf.Configuration.getSharedConfiguration(Configuration.java:176)
at
org
.apache
.cayenne.access.DataContext.createDataContext(DataContext.java:229)
at uk.ac.cam.admin.ed284.Main.main(Main.java:9)
Exception in thread "main"
By default the mapping file points to DriverDataSourceFactory. I
presume that is what I am trying to customise and I need to make sure
I have in my custom factory everything DriverDataSourceFactory Does?
Elena
-----Original Message-----
From: Andrus Adamchik [mailto:[EMAIL PROTECTED]
Sent: 18 June 2008 17:13
To: [email protected]
Subject: Re: Configuring SSL
On Jun 18, 2008, at 7:05 PM, Elena Doyle wrote:
I currently have cayenne.jar in the build path
Hmm... That should be all you need. That's what I meant by
"classpath". There is an alternative in Eclipse. Once you have an
empty class that is declared to implement the interface, e.g.:
public class OracleSSLDataSourceFactory implements DataSourceFactory
{
}
You can right click on this class icon and select "Source ->
Override/
Implement Methods...", and then select all methods from
DataSourceFactory interface as shown by Eclipse.
Andrus