1.

Hibernate ids must be manually assigned エラー対処

編集
この記事の要点
  • Hibernate の IdentifierGenerationException: ids for this class must be manually assigned
  • 原因: マッピングで主キーを自動採番せず手動代入にしているのに、Bean に ID を入れずに save() 呼び出し
  • 対処1: Bean に 明示的に ID を代入してから save
  • 対処2: マッピングで 等の自動採番に切り替える

 

エラー内容

net.sf.hibernate.id.IdentifierGenerationException: ids for this class must be manually assigned before calling save()

 

発生条件と原因

HibernateのマッピングファイルのidがDB側でいうところのPKにも関わらず、beanで値を代入していない場合に起きるエラー。

 

 

対処法

beanに値を入れれば解決するが、DB側でautoincrementを設定している場合は、idタグ内にを指定すればよい
 

編集
Post Share
子ページ

子ページはありません

同階層のページ
  1. ids for this class must be manually assigned before calling save()
  2. Number of positional parameter types (1 does not match number of positional parameters (2)
  3. net.sf.hibernate.MappingException: No persister for ~
  4. net.sf.hibernate.QueryException: unexpected token: as [~]
  5. net.sf.hibernate.MappingException: Error reading resource: ... .hbm.xml Server returned HTTP response code: 503 for URL: http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd Nested exception: Server returned HTTP response code: 503 for URL: http://hibernate.sourceforge.net/hibernate-mapping-3
  6. IllegalArgumentException occurred while calling setter of