我們知道,POA規范定義CORBA對象為具有標識、接口和實現的抽象實體。從客戶機的角度來看,對象表示為對象引用,對象引用封裝了對象接口類型和標識,並包含足夠的信息來定位對象的實現。但從服務器的角度來看又怎樣呢?
1、伺服對象
POA規范引入了伺服對象(servant)的概念,使抽象的CORBA對象能和實現該對象功能的具體編程語言實體徹底分離。這樣從服務器的角度來看, CORBA對象是作為伺服對象實現的。要記住CORBA是與編程語言獨立的體系結構。伺服對象可實現為C++或Java類,也可以實現為一系列的COBOL段或C函數。伺服對象的概念也有助於反映這種與編程語言的獨立性。
那麼ORB如何為一到來的請求找出正確的伺服對象呢?在CORBA對象關鍵字和伺服對象之間必然有某種綁定。下面將探討這種綁定並討論應用程序如何能控制這種綁定。
2、對象適配器
CORBA體系結構定義了對象適配器的概念,用來處理應用程序和O R B如何交互來管理伺服對象和CORBA對象生命周期的問題。對象適配器的一個很好的定義來自Schmidt and Vinoski(1 9 9 7):"對象適配器是一CORBA組件,負責把CORBA的對象概念適配為編程語言的伺服對象概念。"前面已討論過CORBA對象是抽象的,而伺服對象是具體的,那麼這個定義就充分表達了這一點。