2017-09-28 9 views
0

トピックに似ています。 私はその例外を処理できません。Uncatchable ConstraintViolationException(com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException)

あなたはここにコードを見ることができます: https://github.com/ApproxTeam/AntColosseumIIServer/blob/master/src/main/java/com/approxteam/antcolosseumserver/gamelogic/interfaces/beans/WebSocketRegisterer.java

を私が達成したいすべてがそのBeanを呼び出すすべてのメソッドキャッチ例外はなく、破滅です。

すべてのスタックトレース:http://wklejto.pl/txt299134

私はThrowableを、例外、PersistenceException、HibernateExceptionで、ConstaintVolablablaExceptionをキャッチしようとしているが、すべての作品を行いません。

どうしたのですか?

私はデータベースとしてHibernate 5+とMySQLを使用しています。

+0

に動作しますか? – Ravi

+0

catch節がうまく動作せず、決してそれらに到達せず、メソッドが失敗するだけです – Razikus

+0

あなたの質問の中にコードと例外スタックトレースを入れてください。質問は自己完結型であり、重要な情報の外部リンクに依存してはならない。 –

答えて

0

私は答えがあります。

を、私は、メソッドを保存するために

entityManager.flush(); 

を追加し、それはあなたが動作しないことにより、どのような意味ですか

public void save(Object o) throws Exception { 
    entityManager.persist(o); 
    entityManager.flush(); 
} 
0

Email列に一意キー制約があり、スタック

Duplicate entry 'E-mail' for key 'UK_jxn5vjjm6ho216fwddjg10uce' 

から明らかです。

したがって、テーブルから制約を削除して、Emailの重複を許可するか、または保存中にEmailの値を変更してください。

+0

これは私が達成したいことではありません。私はユニークな電子メールと重複がある場合に例外をキャッチする能力を持っています – Razikus

-1

MySQLのドライバのバージョンを確認してください。データベース内にいくつかのバグがあり、例外が発生する場合があります。https://bugs.mysql.com/bug.php?id=68831を参照してください。

+0

phpmyadminから:MariaDB 10.1.23-MariaDB-9 + deb9u1 - Raspbian 9.0 – Razikus

+0

私はmariadbconnectorにmysqlconnectorを変更しようとします。ヒントありがとう – Razikus

+0

いいえ、それは動作していません – Razikus

関連する問題