2012-03-20 5 views
2

Apache Thrift 도구로 작업 중이며 서버 측에서 클라이언트 측으로 일부 예외가 발생합니다.예외가 throw 된시기를 알아 보는 방법

유일한 문제는 클라이언트가 부울 드리프트는 예외를 무시 반환하는 메소드를 호출하고 서버는 부울 값 다시 보낼 때 : 그래서 내가 궁금했다

Here is the issue opened

을 그것은 try/catch 블록이 그것을하지 않기 때문에 예외가 던져 졌는지 확인하는 메소드를 호출 한 후에 가능합니다.

답변

2

나는 매우 깨끗하지 뭔가를 사용하여 내 문제를 해결하지만 트릭을 수행하려면

지금 내 클라이언트가 모든 수신
struct thriftBool{1: bool success = false,} 

: 나는 부울 값의 래퍼처럼 행동 드리프트의 새로운 구조체를 정의 예외 대신

if(client.myMethod()) 

일을 내가하고 있어요 :

if(client.myMethod().success) 

편집 : Thrift의 0.9 버전에서 문제가 해결 된 것으로 보입니다.

+0

0.9 버전에서이 문제가 어떻게 해결되는지 알고 계십니까? –

+0

모르겠다. 항공권을 연 다음 1 년 후에 몇 가지 테스트를 해봤는데 문제가 해결 된 것처럼 보였다. 래퍼를 보관 한 후에 잘못 될 수 있습니다. – darkheir

0

AOP를 사용할 수 있습니다. 그냥 예외 처리 pointcut을 추가하십시오.

관련 문제