この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:1
更新日時:2019-07-30 17:55:22
タイトル: IllegalArgumentException occurred while calling setter of
SEOタイトル: 【hibernateエラー】IllegalArgumentException occurred while calling setter of
| この記事の要点 |
- Hibernate の
IllegalArgumentException occurred while calling setter of
- 原因: Bean の setter が受け取る型と、DB から取得した型が不一致
- 頻出パターン: カラムの型と Bean フィールドの型が違う(int vs Integer / String vs char[] 等)
- 対処: マッピング XML や Bean フィールドの型を DB と一致させる
|
エラー内容
|
Caused by: net.sf.hibernate.PropertyAccessException: IllegalArgumentException occurred while calling setter of ...
at net.sf.hibernate.property.BasicPropertyAccessor$BasicSetter.set(BasicPropertyAccessor.java:68)
at net.sf.hibernate.persister.AbstractEntityPersister.setIdentifier(AbstractEntityPersister.java:329)
at net.sf.hibernate.persister.AbstractEntityPersister.instantiate(AbstractEntityPersister.java:359)
at net.sf.hibernate.impl.SessionImpl.instantiate(SessionImpl.java:1780)
at net.sf.hibernate.impl.SessionImpl.instantiate(SessionImpl.java:1772)
at net.sf.hibernate.loader.Loader.instanceNotYetLoaded(Loader.java:502)
at net.sf.hibernate.loader.Loader.getRow(Loader.java:426)
at net.sf.hibernate.loader.Loader.doQuery(Loader.java:209)
at net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:133)
at net.sf.hibernate.loader.Loader.doList(Loader.java:955)
at net.sf.hibernate.loader.Loader.list(Loader.java:946)
at net.sf.hibernate.hql.QueryTranslator.list(QueryTranslator.java:846)
at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1543)
at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1520)
...
Caused by: java.lang.IllegalArgumentException: argument type mismatch
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at net.sf.hibernate.property.BasicPropertyAccessor$BasicSetter.set(BasicPropertyAccessor.java:38)
... 39 more
|
発生条件/原因/対処法
~.hbm.xmlとそれに対応するbeanファイル(getter/setterクラス)のカラムの型が一致していないことが原因。