현상 : 

QueryDSL 을 위해 Entity에 대한 Query Class 생성 후,

junit 테스트를 돌렸으나 생성한 Query Class 를 찾지 못한다는 NoDefClassFoundError 발생

※ NoDefClassFoundError : compile 시엔 문제없으나, runtime 시 class를 찾지 못하는 현상 (참고)

 

해결 :
1. compile 은 성공적으로 되었으며, compile 한 jar 파일을 실행하여 해당 메소드 호출할 경우 문제가 없는 것으로 보아

build.gradle 혹은 코드문제가 아닌 eclipse 설정이 문제라고 판단.

2. project property > Java Build Path > Source 탭 확인 : 이상없음

3. project property > Deployment Assembly 확인 : 상대경로로 지정된 패키징 경로가 존재.. 해당 부분 제거 후 문제 해결

 

 

 

 

 

 

반응형

현상, Exception Message (Console) : 

org.quartz.JobPersistenceException: Couldn't acquire next trigger: 
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version 
for the right syntax to use near 'OPTION SQL_SELECT_LIMIT=1' at line 1

 

원인 :
Mysql Connector jar 버전 문제

 

해결방법 :

위와 같은 Exception 발생시

mysql-connector-java 버전을 올려준다.

5.1.22 버전 이상으로 올려주면 된다.

 

※ tomcat / jboss(wildfly) 를 사용중이라면 서버 module 버전도 올려주어야 한다.

jboss 경우의 예]

jboss설치디렉토리/modules/com/mysql/main/ 에 5.1.22 이상의 mysql-connector-java-5.1.22.jar 를 넣어주고

module.xml 의 resource root path 를 아래와 같이 수정

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.0" name="com.mysql">
  <resources>
     <resource-root path="mysql-connector-java-5.1.22.jar"/>
  </resources>
  <dependencies>
     <module name="javax.api"/>
  </dependencies>
</module>

 

참고

반응형

www.ibatis.com 폐쇄로 dtd 경로 로 지정 불가. 

www.ibatis.com 을 ibatis.apache.org/dtd 로 수정해줘야함.

 

[잘못된(폐쇄된) dtd 경로]

<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN" "http://www.ibatis.com/dtd/sql-map-config-2.dtd">

[정상 dtd 경로]

<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-config-2.dtd">

 

참고 :

https://storing.tistory.com/105

 

 

반응형

+ Recent posts