mybatis로 전자정부프레임워크 mapper 적용 중 에러입니다.
- 작성자 :
- 이*미
- 작성일 :
- 2015-06-03 15:48:39
- 조회수 :
- 1,696
- 구분 :
- 기타
- 진행상태 :
- 완료
Q
기존에 ibatis 를 사용하다가 mybatis로 변경하려 합니다.
인터페이스를 사용하지 않고 기존 DAO에 egoveAbstractMapper 를 상속받아 적용하려 합니다.
Caused by: java.lang.VerifyError: class egovframework.rte.psl.dataaccess.EgovAbstractMapper overrides final method setSqlSessionFactory.(Lorg/apache/ibatis/session/SqlSessionFactory;)V
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
에러가 계속 나는데 기존 게시판에 mybatis 버전관련 내용이 있어서 버전은 이미 확인을 했습니다.
로컬에서 톰캣으로 구동 중이구요, 전자정부프레임워크 2.7.0 사용하고 있습니다. 에러가 나는 이유가 뭘까요?
인터페이스를 사용하지 않고 기존 DAO에 egoveAbstractMapper 를 상속받아 적용하려 합니다.
Caused by: java.lang.VerifyError: class egovframework.rte.psl.dataaccess.EgovAbstractMapper overrides final method setSqlSessionFactory.(Lorg/apache/ibatis/session/SqlSessionFactory;)V
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
에러가 계속 나는데 기존 게시판에 mybatis 버전관련 내용이 있어서 버전은 이미 확인을 했습니다.
로컬에서 톰캣으로 구동 중이구요, 전자정부프레임워크 2.7.0 사용하고 있습니다. 에러가 나는 이유가 뭘까요?
A
안녕하세요. 표준프레임워크센터입니다.
해당에러는 사용하신 mybatis-spring 버전의 문제로 사료됩니다.
1.1.0 버전일 경우 SqlSessionDaoSupport의 setSqlSessionFactory 메소드가 final로 정의되어 있어서 EgovAbstractMapper에서 override하지 못하여 에러가 발생합니다.
이 메소드는 1.2.0에서 non-final로 변경되어 override가 가능하도록 변경되었습니다.
mybatis-spring 라이브러리 버젼을 확인 해보시고, 혹시 1.1.0버전일 경우 dependency를 다음과 같이 변경하시면 되실 것 같습니다.
(버전 변경)
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.1</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.2.0</version>
</dependency>
감사합니다.
해당에러는 사용하신 mybatis-spring 버전의 문제로 사료됩니다.
1.1.0 버전일 경우 SqlSessionDaoSupport의 setSqlSessionFactory 메소드가 final로 정의되어 있어서 EgovAbstractMapper에서 override하지 못하여 에러가 발생합니다.
이 메소드는 1.2.0에서 non-final로 변경되어 override가 가능하도록 변경되었습니다.
mybatis-spring 라이브러리 버젼을 확인 해보시고, 혹시 1.1.0버전일 경우 dependency를 다음과 같이 변경하시면 되실 것 같습니다.
(버전 변경)
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.1</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.2.0</version>
</dependency>
감사합니다.