레이블이 ERROR인 게시물을 표시합니다. 모든 게시물 표시
레이블이 ERROR인 게시물을 표시합니다. 모든 게시물 표시

2016년 3월 8일 화요일

[Tomcat] tomcat unable to process jar entry ~ for annotations 예외 발생 시

서블릿을 찾으려고 jar 파일을 스캔할 때 발생하는 오류임.
해당 jar 파일이 스캔할 필요가 없는 경우라면,
1. Tomcat 7에서는 catalina.properties에서 tomcat.util.scan.DefaultJarScanner.jarsToSkip 에 해당 jar 파일명 혹은 패턴을 추가함.
2. Tomcat 8에서는 1과 같이 조치하거나, context.xml에서 <JarScanFilter> 부분에 추가하면 됨.

참고: http://wiki.apache.org/tomcat/HowTo/FasterStartUp

저작자: Yes, 상업적 이용: No, 컨텐츠 변경: No

2013년 1월 29일 화요일

JDBC에서 LOAD DATA INFILE 오류발생

Workbench나 mysql console에서는 잘 되는데 JDBC로 접속해 "LOAD DATA INFILE"을 하면 안될 때가 있다. 컬럼 개수가 안 맞는다거나 형태를 바꿀 수 없다는 오류 메시지만 계속 나올 뿐이다.
이 문제는 지정한 데이터 파일 내 빈 필드값이 있을 때 간혹(?) 발생한다. 그렇니까, 다음과 같이 구분자가 연속으로 나오는 경우이다.
COL1, COL2, COL3
1,A,B
2,,C
3,D,
해결방법은 데이터 파일의 빈필드에 문자열 '\N'을 명시적으로 넣어 NULL임을 알려 주는 것이다.
COL1, COL2, COL3
1,A,B
2,\N,\NC
3,D,\N
이 방법이 여의치 않다면 "LOAD DATA INFILE" 명령을 다음과 같이 실행하여 해결할 수도 있다.
LOAD DATA INFILE 'data file path'
REPLACE INTO TABLE_NAME
FIELD TERMINATED BY ','
LINES TERMINATED BY '\n'
(@V1, @V2, @V3)
SET COL1 = NULLIF(@V1, '')
  , COL2 = NULLIF(@V2, '')
  , COL3 = NULLIF(@V3, '')
;
데이터를 넣을 테이블에는 컬럼 COL1, COL2, COL3가 있으며, 해결책의 키-포인트는 "SET"을 이용한 부분이다.
저작자: Yes, 상업적 이용: No, 컨텐츠 변경: No