Ich bin mit jboss5.1.x, EJB3.0Schreiben auf Datenbankprotokoll in der Mitte des Rollbacks
Ich habe eine Transaktion, die so geht: MDB JMS Queue hören. MDB nimmt msg von JMS in Datenbank schreiben.
In einigen der catch-Klauseln wir werfen "New EJBException (..)", um Rollbacks zu haben, wenn bestimmte Ausnahmen auftreten.
daneben habe ich einen Re-try-Mechanismus konfiguriert, nach 3 mal die msg in die Fehlerwarteschlange gehen.
Was ich will achive ist:
wenn Iam ein Rollback mit, ich will die aktuelle Wiederholungszahl erhöhen, so dass, wenn some1 die Datenbank beobachtet, kann er/sie on-line die sehen können aktuelle Wiederversuchsnummer.
das Problem ist: wenn ich Rollback, so auch der „insert_number_of_retry“ query gerollt wird wieder selbst, die von mir verhindert die aktuelle Wiederholungsanzahl zu der Datenbank hinzuzufügen
wie kann ich dieses Problem lösen?
Danke,
ray.
NotSupported funktioniert auch. außer dass es in keiner Transaktion getan wird http://www.roseindia.net/javacertification/ibm-287/manipulate_transactional.shtml –
Ich versuchte @TransactionAttribute (TransactionAttributeType.REQUIRES_NEW), es hat nicht funktioniert. Die Aktion wurde ebenfalls zurückgesetzt. – rayman
es funktionierte nur, wenn ich es in einem separaten Thread einwickelte. – rayman