Одно из использованных мной решений состоит в том, чтобы использовать триггеры в базе данных для отправки сообщения JMS в ваше приложение. Затем сообщение принимается в MDB, где кэш EclipseLink может быть аннулирован или обновлен. Этот подход хорошо работает в базе данных Oracle, где триггер сбрасывает сообщения в таблицу AQ.
Это специфичные для СУБД решения, с которыми я знаком, но задача всегда состоит в том, чтобы получить уведомление об изменении, включающее в себя таблицу и значения PK вместо ROWID, а также убедиться, что вы не будете уведомлены об изменениях, которые вы сделали самостоятельно или у вас есть способ легко отфильтровывать уведомления от ваших собственных изменений.
Я считаю, GoldenGate помогает решить эту проблему, но я еще не пробовал сам.
Doug