Respuesta encontrada en Problema de HIbernate con Oracle Trigger para generar una identificación a partir de una secuencia
Necesito adaptar mi disparador para que se ejecute solo si no se proporciona una identificación:
CREATE OR REPLACE TRIGGER A_TRG
BEFORE INSERT
ON A REFERENCING NEW AS New OLD AS Old
FOR EACH ROW
WHEN (New.IDS is null) -- (1)
BEGIN
:new.IDS := A_SEQ.nextval;
END A_TRG;
/
(1) esta línea le permite a Hibernate llamar manualmente a A_SEQ.nextVal para establecer la ID y luego omitir el disparador; de lo contrario, Hibernate obtendrá el nextval inútilmente porque el disparador siempre restablecerá la ID llamando a nextval nuevamente