Product: OpenFusion Notification Service
Version: ALL
Description:
Differences in the behavior of narrow() with destroyed objects
Resolution:
With OpenFusion v3 and below the narrow operation on objects in certain circumstances used to fail, but now the operation succeeds.
This is due to the way CORBA objects are handled within version 4 of the Notification Service, the OBJECT_NOT_EXIST exception can be thrown in different circumstances than in versions 2.5 and 3. Instead of the exception being thrown when a reference to the the non-existent object is obtained, it will be thrown when the first call is made to the object.
For example: consider the case of a channel that has been destroyed, but the client code has a reference to it via an IOR. In versions 2.5 and 3, the act of obtaining the channel reference by performing a narrow would cause OBJECT_NOT_EXIST to be thrown. In version 4 the narrow operation will complete without error; the OBJECT_NOT_EXIST will be thrown when the channel is used (i.e. a call is made to it, such as default_supplier_admin()).
#OpenFusion
#KnowledgeDocs