태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

language/java2009/05/29 10:08

Exception 처리를 하는데, 

Exception을 throw로 던져버리니, log4j로 찍을수가 없었다.


그래서, StackTrace를 String으로 받는방법이 필요했다.


검색을 해보니 http://arraybox.com/44 에서 내용을 찾을수 있었다. 

이분도 okjsp에서 내용을 찾으신거 같은데, okjsp 사이트가 안열리니 ㅎㅎ


어쨋든 ㅎㅎ

--------------------------------------------------------------

예외가 발생했을 때, stack trace를 String으로 받는 방법입니다.

import java.io.ByteArrayOutputStream;
import java.io.PrintStream;


public class GetPrintStackTraceIntoString {


public static void main(String[] args) {

Exception e = new Exception("my exception");
ByteArrayOutputStream out = new ByteArrayOutputStream();
PrintStream pinrtStream = new PrintStream(out);

// 걍 e.printStackTrace()하면 System.out에 찍는데,

// 출력할 PrintStream을 생성해서 건네 줍니다.

e.printStackTrace(pinrtStream);

String stackTraceString = out.toString(); // 찍은 값을 가져오고.

System.out.println("stack trace="+stackTraceString);

}

}

/*
* result
stack trace=java.lang.Exception: my exception
at GetPrintStackTraceIntoString.main(GetPrintStackTraceIntoString.java:12)

*/




-----------------------------------------------------------------------
Posted by THLIFE.net

TRACKBACK http://thlife.net/trackback/891 관련글 쓰기

댓글을 달아 주세요