Ok. I know this is a weird one, but here goes.
I downloaded the ldapJdbc driver from openldap.org the other day. It allows
one to write SQL queries which are then translated into LDAP requests. Its
pretty neat so far. I am trying to use OJB like I would in any other project
and just put the ldapJdbc jar in for the driver.
<jdbc-connection-descriptor
jcd-alias="test-ldap"
default-connection="true"
platform=""
jdbc-level="4.0"
driver="com.octetstring.jdbcLdap.sql.JdbcLdapDriver"
protocol="jdbc"
subprotocol="ldap"
dbalias="//192.168.195.2:389/?SEARCH_SCOPE:=subTreeScope"
username="domain\jauthenticator"
password="mypassword"
eager-release="false">What should I use for the "platform"? If I leave it blank I am pretty sure that OJB falls back on whatever the default is.
But, that isn't where I am getting a problem. OJB is trying to use transactions
and the LDAP driver doesn't allow that.
-----------------------------------------------------------------------------------
Caused by: org.apache.ojb.broker.accesslayer.LookupException: Platform dependent initialization of connection failed at org.apache.ojb.broker.accesslayer.ConnectionFactoryAbstractImpl.initializeJdbcConnection(ConnectionFactoryAbstractImpl.java:157)
at org.apache.ojb.broker.accesslayer.ConnectionFactoryAbstractImpl.newConnectionFromDriverManager(ConnectionFactoryAbstractImpl.java:272)
at org.apache.ojb.broker.accesslayer.ConnectionFactoryNotPooledImpl.getConnectionFromPool(ConnectionFactoryNotPooledImpl.java:40)
at org.apache.ojb.broker.accesslayer.ConnectionFactoryAbstractImpl.lookupConnection(ConnectionFactoryAbstractImpl.java:116)
at org.apache.ojb.broker.accesslayer.ConnectionManagerImpl.getConnection(ConnectionManagerImpl.java:105)
at org.apache.ojb.broker.accesslayer.StatementManager.getPreparedStatement(StatementManager.java:637)
... 55 more
Caused by: org.apache.ojb.broker.platforms.PlatformException: Connection initializing: setAutoCommit(true) failed
at org.apache.ojb.broker.platforms.PlatformDefaultImpl.initializeJdbcConnection(PlatformDefaultImpl.java:160)
at org.apache.ojb.broker.accesslayer.ConnectionFactoryAbstractImpl.initializeJdbcConnection(ConnectionFactoryAbstractImpl.java:153)
... 60 more
Caused by: java.sql.SQLException: LDAP Does Not Support Transactions
at com.octetstring.jdbcLdap.jndi.JndiLdapConnection.setAutoCommit(JndiLdapConnection.java:478)
at org.apache.ojb.broker.platforms.PlatformDefaultImpl.initializeJdbcConnection(PlatformDefaultImpl.java:154)
... 61 more
-----------------------------------------------------------------------------------
At the base of it is the SQLException about LDAP not supporting transactions.
Can I turn that off somewhere in the OJB.properties?
I know this is a bit bizarro, so any ideas or theories are appreciated.
Should I consider trying to write my own PlatformLDAPImpl class? Just a thought.
Thanks a lot.
Charlie
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
