JAVA Exception 내용 세부 분류
예외가 발생을 하면 printStackTrace()를 통해서 예외 내용에 대한 부분을 출력한다.
하지만 예외 전체가 아닌 실제로 예외가 발생한 클래스만 확인하는 방법은 다음과 같이 처리하면 된다.
1
2
3
4
5
6
7
8
9
10
11
try{
...
}catch(Exception e){
StackTraceElement[] ste = e.getStackTrace();
String className = ste[0].getClassName();
String methodName = ste[0].getMethodName();
int lineNumber = ste[0].getLineNumber();
String fileName = ste[0].getFileName();
logger.severe("Exception : " + e.getMessage());
logger.severe(className + "." + methodName + " " + fileName + " " + lineNumber + "line");
}
StackTraceElement 배열의 0번째에는 예외가 발생한 클래스 정보가 있으며, 마지막에는 최초 호출된 클래스의 정보가 있다. 일반적인 WAS에서는 WAS 관련 클래스 정보가 포함될 것이다.
This post is licensed under
CC BY 4.0
by the author.