I'm using OJB 0.9.9 with MsAccess and I got an error from the ODBC
controller: Optional function not implemented.

Got someone a similar error with Access?

The update statement OJB generates is very simple DELETE FROM
palabrasClaveRevisor WHERE revisor=? AND palabraClave=? .
palabrasClaveRevisor is an intermediary table that only has the primary keys
from tables palabrasClave and revisores (M:N relation)

Can anybody help me?

Bellow is an extract of a log in debug mode:
12:46:29,524 - DEBUG
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl -
createPersistenceBroker(key) called
12:46:29,524 - DEBUG
org.apache.ojb.broker.accesslayer.ConnectionManagerImpl - Request new
connection from ConnectionFactory: [EMAIL PROTECTED]
12:46:29,524 - DEBUG
org.apache.ojb.broker.accesslayer.ConnectionManagerImpl - Try to change
autoCommit state to 'false'
12:46:29,524 - DEBUG
org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl - SQL: SELECT
apellidos,nombre,organizacion,tratamiento,id FROM revisores WHERE id = ?
12:46:29,524 - DEBUG org.apache.ojb.broker.accesslayer.StatementManager -
closeResources was called
12:46:29,534 - DEBUG org.apache.ojb.broker.accesslayer.StatementManager -
closeResources was called
12:46:29,534 - DEBUG org.apache.ojb.broker.accesslayer.JdbcAccessImpl -
executeUpdate : [EMAIL PROTECTED]
12:46:29,544 - DEBUG
org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl - SQL: UPDATE
contactoRevisor SET direccion=?, ciudad=?, codigoPostal=?, pais=?, email=?,
telefono=?, fax=?, url=? WHERE revisor = ?
12:46:29,554 - DEBUG org.apache.ojb.broker.accesslayer.StatementManager -
closeResources was called
12:46:29,554 - DEBUG org.apache.ojb.broker.accesslayer.JdbcAccessImpl -
executeUpdate : [EMAIL PROTECTED]
12:46:29,554 - DEBUG
org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl - SQL: UPDATE
revisores SET tratamiento=?, nombre=?, apellidos=?, organizacion=? WHERE id
= ?
12:46:29,554 - DEBUG org.apache.ojb.broker.accesslayer.StatementManager -
closeResources was called
12:46:29,554 - DEBUG
org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl - SQL: SELECT
palabraClave FROM palabrasClaveRevisor WHERE revisor=?
12:46:29,554 - DEBUG org.apache.ojb.broker.accesslayer.JdbcAccessImpl -
executeSQL: SELECT palabraClave FROM palabrasClaveRevisor WHERE revisor=?
12:46:29,564 - DEBUG
org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl - SQL: DELETE
FROM palabrasClaveRevisor WHERE revisor=? AND palabraClave=?
12:46:29,564 - DEBUG org.apache.ojb.broker.accesslayer.JdbcAccessImpl -
executeUpdateSQL: DELETE FROM palabrasClaveRevisor WHERE revisor=? AND
palabraClave=?
12:46:29,574 - ERROR org.apache.ojb.broker.accesslayer.JdbcAccessImpl -
SQLException during the execution of the Update SQL query (for a
com.gescon.model.revisor.RevisorImpl): SQL Exception :
[Microsoft][Controlador ODBC Microsoft Access]Función opcional no
implementada
java.sql.SQLException: SQL Exception : [Microsoft][Controlador ODBC
Microsoft Access]Función opcional no implementada
        at
sun.jdbc.odbc.JdbcOdbcPreparedStatement.setObject(JdbcOdbcPreparedStatement.
java:1415)
        at
sun.jdbc.odbc.JdbcOdbcPreparedStatement.setObject(JdbcOdbcPreparedStatement.
java:1072)
        at
org.apache.ojb.broker.platforms.PlatformDefaultImpl.setObjectForStatement(Un
known Source)
        at
org.apache.ojb.broker.platforms.PlatformMySQLImpl.setObjectForStatement(Unkn
own Source)
        at
org.apache.ojb.broker.accesslayer.StatementManager.bindValues(Unknown
Source)
        at
org.apache.ojb.broker.accesslayer.JdbcAccessImpl.executeUpdateSQL(Unknown
Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.deleteMtoNImplementor(U
nknown Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.storeCollections(Unknow
n Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.storeToDb(Unknown
Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.store(Unknown Source)
        at
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.store(Unknown Source)
        at
org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.store(Unknown
Source)
        at
com.gescon.model.revisor.dao.OJBRevisorDAO.modificarRevisor(Unknown Source)

...

Reply via email to