La mejor manera que conozco de hacer esto es a través de Oracle AQ (una implementación de JMS)
También hay notificación de cambio de base de datos , en el que no tengo ninguna experiencia, pero podría ser lo que buscas, creo que en realidad se basa en AQ.