2011-04-27 2 views

답변

2

서비스 참조의 바인딩이 예외를 throw했기 때문에 반드시 구성 요소를 활성화 할 수 없다는 것을 의미하지는 않습니다. 컴퍼넌트는 예외를 인식하고 있기 때문에 (결국, 그것을 버리는 바인딩 메소드입니다), 활성화 할 수있는 방법으로 구현할 수 있습니다. 기본값으로 돌아가거나 제한된 서비스를 제공함으로써.

정품 인증에 실패 할 수있는 정품 인증 방법과 달리 바인딩 메서드는 예외를 던져서는 안됩니다.

참조 :

은 OSGi 112.5.7 "바인딩 방식은 예외가 발생하는 경우, SCR은 에러 로그 서비스 예외를 포함하는 메시지가 존재하는 경우 만, 구성 요소 설정의 활성화를 기록해야 실패하지 않습니다. "

+0

구성 요소는 예외를 어떻게 인식합니까? 서비스 컴포넌 트 런타임에 의해 삼킨 것처럼 보입니다. –

+0

@Dave H 바인딩 메소드는 예외가 예상되는 경우 '시도/catch'할 수 있습니다. 그것이 유일한 합리적인 전략이라면 심지어 그것을 되 살릴 수 있습니다. –

+0

바인딩 메소드가 예외 (RuntimeException)를 예상하지 못하면 어떻게됩니까? –

관련 문제