MappingException

EmpとDeptの間に関連を設定しましょう.

* EmpクラスのフィールドdeptIdと メソッドgetDeptId()/setDeptId(Integer)を削除してください.
* Empクラスに関連のフィールド及びgetter/seterメソッドを追加してください.

Kuina-Dao - Kuina-Daoファーストステップ・ガイド - スタンドアロン編

の「EmpクラスのフィールドdeptIdと メソッドgetDeptId()/setDeptId(Integer)を削除してください.」を忘れると、

org.seasar.framework.exception.OgnlRuntimeException: [ESSR0073]OGNLで例外が発生しました。理由はorg.hibernate.MappingException: Repeated column in mapping for entity: jpa.study.entity.Emp column: DEPT_ID (should be mapped with insert="false" update="false") at file:///C:/eclipse_workspace/seasar2/jpa-study/jpa.dicon(13)
at org.seasar.framework.util.OgnlUtil.getValue(OgnlUtil.java:100)
at org.seasar.framework.container.ognl.OgnlExpression.evaluate(OgnlExpression.java:64)
at org.seasar.framework.container.assembler.AbstractConstructorAssembler.assembleExpression(AbstractConstructorAssembler.java:76)
at org.seasar.framework.container.assembler.AbstractConstructorAssembler.assemble(AbstractConstructorAssembler.java:50)
at org.seasar.framework.container.deployer.SingletonComponentDeployer.assemble(SingletonComponentDeployer.java:64)
at org.seasar.framework.container.deployer.SingletonComponentDeployer.deploy(SingletonComponentDeployer.java:48)
at org.seasar.framework.container.deployer.SingletonComponentDeployer.init(SingletonComponentDeployer.java:76)
at org.seasar.framework.container.impl.ComponentDefImpl.init(ComponentDefImpl.java:236)
at org.seasar.framework.container.impl.S2ContainerImpl.init(S2ContainerImpl.java:563)
at org.seasar.framework.container.impl.ThreadSafeS2ContainerImpl.init(ThreadSafeS2ContainerImpl.java:172)
at org.seasar.framework.container.impl.S2ContainerImpl.init(S2ContainerImpl.java:560)
at org.seasar.framework.container.impl.ThreadSafeS2ContainerImpl.init(ThreadSafeS2ContainerImpl.java:172)
at org.seasar.framework.container.impl.S2ContainerImpl.init(S2ContainerImpl.java:560)
at org.seasar.framework.container.impl.ThreadSafeS2ContainerImpl.init(ThreadSafeS2ContainerImpl.java:172)
at org.seasar.framework.container.impl.S2ContainerImpl.init(S2ContainerImpl.java:560)
at org.seasar.framework.container.impl.ThreadSafeS2ContainerImpl.init(ThreadSafeS2ContainerImpl.java:172)
at org.seasar.framework.unit.impl.SimpleInternalTestContext.initContainer(SimpleInternalTestContext.java:179)
at org.seasar.framework.unit.S2TestMethodRunner.initContainer(S2TestMethodRunner.java:452)
at org.seasar.framework.unit.S2TestMethodRunner.runMethod(S2TestMethodRunner.java:245)
at org.seasar.framework.unit.S2TestMethodRunner.run(S2TestMethodRunner.java:171)
at org.seasar.framework.unit.S2TestClassMethodsRunner.invokeTestMethod(S2TestClassMethodsRunner.java:227)
at org.seasar.framework.unit.S2TestClassMethodsRunner.run(S2TestClassMethodsRunner.java:89)
at org.seasar.framework.unit.S2TestClassRunner.run(S2TestClassRunner.java:67)
at org.seasar.framework.unit.Seasar2.run(Seasar2.java:168)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:38)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
Caused by: javax.persistence.PersistenceException: org.hibernate.MappingException: Repeated column in mapping for entity: jpa.study.entity.Emp column: DEPT_ID (should be mapped with insert="false" update="false")
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:720)
at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:127)
at org.seasar.framework.jpa.impl.ContainerPersistenceUnitProvider.createEntityManagerFactory(ContainerPersistenceUnitProvider.java:240)
at org.seasar.framework.jpa.impl.ContainerPersistenceUnitProvider.createEntityManagerFactory(ContainerPersistenceUnitProvider.java:144)
at org.seasar.framework.jpa.impl.PersistenceUnitManagerImpl.createEntityManagerFactory(PersistenceUnitManagerImpl.java:172)
at org.seasar.framework.jpa.impl.PersistenceUnitManagerImpl.getEntityManagerFactory(PersistenceUnitManagerImpl.java:153)
at org.seasar.framework.jpa.impl.AbstractPersistenceUnitProvider.getEntityManagerFactory(AbstractPersistenceUnitProvider.java:124)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:584)
at ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:1017)
at ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:53)
at ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:121)
at ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1758)
at ognl.ASTProperty.getValueBody(ASTProperty.java:92)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:171)
at ognl.SimpleNode.getValue(SimpleNode.java:211)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:171)
at ognl.SimpleNode.getValue(SimpleNode.java:211)
at ognl.Ognl.getValue(Ognl.java:333)
at ognl.Ognl.getValue(Ognl.java:310)
at org.seasar.framework.util.OgnlUtil.getValue(OgnlUtil.java:95)
... 29 more
Caused by: org.hibernate.MappingException: Repeated column in mapping for entity: jpa.study.entity.Emp column: DEPT_ID (should be mapped with insert="false" update="false")
at org.hibernate.mapping.PersistentClass.checkColumnDuplication(PersistentClass.java:652)
at org.hibernate.mapping.PersistentClass.checkPropertyColumnDuplication(PersistentClass.java:674)
at org.hibernate.mapping.PersistentClass.checkColumnDuplication(PersistentClass.java:696)
at org.hibernate.mapping.PersistentClass.validate(PersistentClass.java:450)
at org.hibernate.mapping.RootClass.validate(RootClass.java:192)
at org.hibernate.cfg.Configuration.validate(Configuration.java:1102)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1287)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:713)
... 53 more

といわれる。

参考:

これは結構はまりどころな気がする。