try {
if (schId != null) {
log.info(">>> save");
schedule = em.merge(schedule);
em.persist(schedule);
} else {
em.persist(schedule);
}
em.flush();
ret = "ok";
} catch (Exception err) {
ret = err.getMessage();
err.printStackTrace();
facesMessages.addFromResourceBundle(Severity.ERROR, "databaseError", ret);
}
重複キーエラーerr.getMessage()
が返された場合org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch
スタックトレースには、次のエラーもあります。
java.sql.BatchUpdateException: ORA-00001: unique constraint (ACM.SCH_UK) violated
この ORA-00001 メッセージをテキストではなく文字列として取得するにはどうすればよいorg.hibernate.exception.ConstraintViolationException
ですか?