2011-04-27 33 views

回答

2

僅僅因爲服務引用的綁定拋出異常並不一定意味着組件不能激活。由於該組件知道該異常(畢竟,它是拋出它的綁定方法),所以它可以以仍然可以被激活的方式實現,例如,通過降低默認值或提供有限的服務。

無論如何,綁定方法不應該拋出任何異常,這與激活方法不會導致激活失敗不同。

參考:

的OSGi 112.5.7:「如果綁定方法拋出異常,SCR必須登錄包含與登錄服務之外,如果存在一個錯誤消息,但是組件的配置的激活不會失敗。「

+0

組件如何識別異常。看起來它只是被服務組件運行時吞下。 – 2011-04-28 14:04:38

+0

@Dave H如果綁定方法預期有異常,它可以'try/catch'。如果它是唯一明智的策略,它甚至可以重新推出它。 – 2011-04-28 14:11:27

+0

如果綁定方法不期望異常(RuntimeException),該怎麼辦? – 2011-05-23 13:35:54

相關問題