2010-07-07 2 views
0

마지막 시도 try/catch 블록에서 각 메서드를 래핑하지 않고 BlazeDS 원격 메서드에서 발생하는 모든 (확인되지 ​​않은) 예외를 자동으로 catch하는 방법이 있습니까? 내 코드는 필요에 따라 검사 된 예외를 catch하지만, NullPointerExceptions, ArrayIndexOutOfBoundsExceptions 등이 길어져 클라이언트에 설정되지 않게하는 것이 좋습니다.BlazeDS 원격 메소드가 던진 모든 예외를 자동으로 잡으시겠습니까?

답변

1

스프링 - 블레이즈 통합 프로젝트를 사용하는 것이 좋습니다. 이점 중 하나는 문제를 해결할 수있는 ExceptionTranslator 메커니즘인데, 나는 here이라는 기사를 썼다.

스프링을 사용할 수없는 경우 BlazeDS 소스 코드를보고 직접 인터셉터를 추가 할 수 있습니다. BlazeDS 코드는 깨끗하고 이해하기 어렵지 않습니다.

+0

감사합니다. 불행히도 우리 프로젝트는 Spring을 사용하지 않지만 BlazeDS 소스에서 좀 더 살펴보고 내가 무엇을 찾을 수 있는지 알아볼 것입니다. – fizban

1

Thread.setDefaultUncaughtExceptionHandler을 살펴 보니 원하는대로 제공됩니다.

+0

감사합니다. 나는 그것에 대해 알지 못했지만 내 상황에서는 효과가 없을 것이라고 생각합니다. 내 코드에서 발견되지 않은 모든 예외는 BlazeDS에 의해 잡히게되고 기본 처리기로 전달되지 않습니다. 나는 블레이즈가 블럭을 가져 오기 전에 블럭을 잡을 수있는 방법을 원한다. – fizban

+0

Aspect 지향 프로그래밍으로 수행 할 수있는 작업을 살펴볼 수 있습니다. (예를 들어 AspectJ). 그것은 매우 강력하고, 많은 것들을 컴파일하거나 시간이나 런타임을하게하십시오. –

관련 문제