Sletter kun første tilfælde fra database
Jeg forsøger at slette en række kolonner fra databasen, ved hjælp af en lykke der gentagne gange kalder funktionen deletePresence (følger). Problemet er at det kun er det første tilfælde det lykkedes mig at slette, de andre bliver ikke slettet. Jeg har prøvet at bytte rundt på rækkefølgen og da er det ikke den samme kolonne der bliver slettet, det er altid den første som bliver kaldt. Er der nogen der kan hjælpe?public synchronized void deletePresence(Presence presence) {
Connection connection = null;
try {
InitialContext ctx = new InitialContext();
DataSource dataSource = (DataSource) ctx.lookup("jdbc/pocDS");
connection = dataSource.getConnection();
Statement statement = connection.createStatement();
statement.execute("delete from KF.KNT where id='" + presence.getId() + "'");
connection.close();
} catch (NamingException e) {
throw new WrappedException(Layer.BUSINESS, e);
} catch (SQLException e) {
throw new WrappedException(Layer.BUSINESS, e);
}
}
Jeg får også følgende fejl i min log fil, som jeg tænker kunne være relateret til det, men jeg er ikke sikker på det ikke var der før:
[07-11-15 15:56:17:900 CET] 00000011 InternalOracl I DSRA8203I: Database product name : Oracle
[07-11-15 15:56:17:900 CET] 00000011 InternalOracl I DSRA8204I: Database product version : Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
[07-11-15 15:56:17:900 CET] 00000011 InternalOracl I DSRA8205I: JDBC driver name : Oracle JDBC driver
[07-11-15 15:56:17:900 CET] 00000011 InternalOracl I DSRA8206I: JDBC driver version : 10.2.0.1.0
[07-11-15 15:56:17:916 CET] 00000011 InternalOracl I DSRA8212I: DataStoreHelper name is: com.ibm.websphere.rsadapter.Oracle10gDataStoreHelper@4ec24ec2.
[07-11-15 15:56:17:916 CET] 00000011 WSRdbDataSour I DSRA8208I: JDBC driver type : ""
[07-11-15 15:56:17:931 CET] 00000011 WSRdbXaResour E DSRA0304E: XAException occurred. XAException contents and details are: The cause is : null.
[07-11-15 15:56:17:931 CET] 00000011 WSRdbXaResour E DSRA0302E: XAException occurred. Error code is: XAER_RMERR (-3). Exception is: <null>
[07-11-15 15:56:17:947 CET] 00000011 XARminst E WTRN0037W: The transaction service encountered an error on an xa_recover operation. The resource was com.ibm.ws.rsadapter.spi.WSRdbXaResourceImpl@79207920. The error code was XAER_RMERR. The exception stack trace follows: javax.transaction.xa.XAException
at oracle.jdbc.xa.OracleXAResource.recover(OracleXAResource.java:526)
at com.ibm.ws.rsadapter.spi.WSRdbXaResourceImpl.recover(WSRdbXaResourceImpl.java:964)
at com.ibm.ws.Transaction.JTA.XARminst.recover(XARminst.java:138)
at com.ibm.ws.Transaction.JTA.XARecoveryData.recover(XARecoveryData.java:687)
at com.ibm.ws.Transaction.JTA.PartnerLogTable.recover(PartnerLogTable.java:524)
at com.ibm.ws.Transaction.JTA.RecoveryManager.resync(RecoveryManager.java:1830)
at com.ibm.ws.Transaction.JTA.RecoveryManager.run(RecoveryManager.java:2509)
at java.lang.Thread.run(Thread.java:797)