Bom dia meu amigo, acabei resolvendo esse problema com try catch e peguei a Exception especifica
Na exception, peguei a frase e tratei o erro. Veja
.doTry()
.routeId("direct:rota_B") //renomeia a rota
.log("chamando ROTA B")
.setBody(simple("INSERT .... comando SQL "))//gera o comando insert
.to("jdbc:dsDESTINO")//insere no destino
.doCatch(org.postgresql.util.PSQLException.class)
.log(" EXCEPTION POSTGRES " + exceptionMessage().toString())
.onWhen(exceptionMessage().contains("tabela_b_pkey")) //chave primaria deu exception
.log("ERRO : tabela_b_pkey inte_id: ${property.idLog} JA EXISTE EM banco:integracao public.tabela_b unid_id:${property.unid_id}" )
/** TODO verificar se é possivel consumir a mensagem porque ela já existe para esse banco dde dados */
.to("file:exception")
.doCatch(Exception.class)
.log("EXCEPTION GENERICA")
.to("file:exception")
.doFinally()
.to("mock:end");