프레임워크 3.1 콘솔에 로그가 안나옵니다.
- 작성자 :
- 윤*운
- 작성일 :
- 2015-01-16 17:06:41
- 조회수 :
- 676
- 구분 :
- 기타
- 진행상태 :
- 완료
Q
안녕하세요.
프레임워크 3.1 개발환경 사용중입니다.
Tomcat 6.0 입니다.
Exception이 나도 콘솔에 로그가 안나옵니다.
다른 프로젝트 개발중에 DB에러는 나오는데요. 컨트롤러에서 Java 에러는 로그가 안나옵니다. 에러페이지는 처리됨.
혹시 몰라서 새로 프로젝트 생성해서 기본 예제 실행해 보니 역시 안나옵니다.
런타임에러도 마찬가지고 throw해도 마찬가지입니다.
New > egovFrame Web Project 로 신규 프로젝트 생성
Generate Example 선택하고 프로젝트 생성 후 실행
EgovSampleController 에 throw new Exception("test");
=> 콘솔에 아무런 반응이 없습니다.
샘플 프로젝트 기준으로 설정 변경해야 할 부분이 어디인지 알려주세요.
프레임워크 3.1 개발환경 사용중입니다.
Tomcat 6.0 입니다.
Exception이 나도 콘솔에 로그가 안나옵니다.
다른 프로젝트 개발중에 DB에러는 나오는데요. 컨트롤러에서 Java 에러는 로그가 안나옵니다. 에러페이지는 처리됨.
혹시 몰라서 새로 프로젝트 생성해서 기본 예제 실행해 보니 역시 안나옵니다.
런타임에러도 마찬가지고 throw해도 마찬가지입니다.
New > egovFrame Web Project 로 신규 프로젝트 생성
Generate Example 선택하고 프로젝트 생성 후 실행
EgovSampleController 에 throw new Exception("test");
=> 콘솔에 아무런 반응이 없습니다.
샘플 프로젝트 기준으로 설정 변경해야 할 부분이 어디인지 알려주세요.
A
안녕하세요. 윤형운님.
Service 호출 시 발생된 Exception의 경우는 AOP 방식을 통하여 ExceptionHandler를 호출하고, 해당 Handler에서 로그를 찍어주시면 됩니다. (context-aspect.xml 참조)
문제는 Controller에서 발생된 Exception의 AOP의 적용 범위가 아니기 때문에 별도의 로그를 처리할 수 있는 부분의 개입이 없습니다.
이런 View 부분에 대한 Exceptioin 처리는 등록된 ExceptionResolver에 의해서 특정 View만을 리턴하여 해당 View(JSP)로만 이동하도록 되어 있습니다. (dispatcher-servlet.xml 상에 SimpleMappingExceptionResolver 참조)
이 경우는 해당 JSP 상에서 Exception에 대한 정보를 표시하는 기본 console (System.out 또는 System.err)에만 남기실 수 있고 log4j와 같은 처리를 지원하지 못합니다.
단순히 오류를 console 상에 표시(e.g printStackTrace 메소드 호출)하시려면 지정된 SimpleMappingExceptionResolver에 지정된 error jsp 상에서 일반적은 JSP의 에러 처리 방식과 동일하게 처리하시면 됩니다.
로그를 적용하시면 아무래도 AOP 추가 적용을 통하여 에러를 로그에 기록하는 Advice 추가가 필요하실 것 같습니다.
그럼, 즐거운 하루되십시오.
감사합니다.
Service 호출 시 발생된 Exception의 경우는 AOP 방식을 통하여 ExceptionHandler를 호출하고, 해당 Handler에서 로그를 찍어주시면 됩니다. (context-aspect.xml 참조)
문제는 Controller에서 발생된 Exception의 AOP의 적용 범위가 아니기 때문에 별도의 로그를 처리할 수 있는 부분의 개입이 없습니다.
이런 View 부분에 대한 Exceptioin 처리는 등록된 ExceptionResolver에 의해서 특정 View만을 리턴하여 해당 View(JSP)로만 이동하도록 되어 있습니다. (dispatcher-servlet.xml 상에 SimpleMappingExceptionResolver 참조)
이 경우는 해당 JSP 상에서 Exception에 대한 정보를 표시하는 기본 console (System.out 또는 System.err)에만 남기실 수 있고 log4j와 같은 처리를 지원하지 못합니다.
단순히 오류를 console 상에 표시(e.g printStackTrace 메소드 호출)하시려면 지정된 SimpleMappingExceptionResolver에 지정된 error jsp 상에서 일반적은 JSP의 에러 처리 방식과 동일하게 처리하시면 됩니다.
로그를 적용하시면 아무래도 AOP 추가 적용을 통하여 에러를 로그에 기록하는 Advice 추가가 필요하실 것 같습니다.
그럼, 즐거운 하루되십시오.
감사합니다.