Legacy Issue Number: 3636
Source: Triodia Technologies Pty Ltd ( Michi Henning)
This operation requires the USE_DEFAULT_SERVANT policy or a
combination of the RETAIN policy and either the UNIQUE_ID or
IMPLICIT_ACTIVATION policies; if not present, the WrongPolicy
exception is raised.
Note that there is nothing conditional here. If these policies are not
present, the operation raises an exception.
Compare this with servant_to_reference:
This operation requires the RETAIN policy and either the
UNIQUE_ID or IMPLICIT_ACTIVATION policies if invoked outside
the context of an operation dispatched by this POA.
Note that, in this case, we have a qualification:
"... if invoked outside the context of an operation..."
Why the difference between the two? They almost do the same thing, namely,
map from a servant to an object ID. It's just that servant_to_reference,
after it has the object ID, also embeds that object ID in a reference.
So, shouldn't the two operations behave the same way? In particular,
why should servant_to_id raise an exception if I call it from within the
context of an executing operation on the specified servant?
In other words, it seems that the behavior specified for servant_to_reference
is correct and should apply equally to servant_to_id. In effect, calling
the operation from withing an executing operation on the specified servant
should do the same thing as calling get_object_id on the POA Current and
use the resulting id.
Am I missing something?
Reported: CORBA 2.3.1 — Mon, 22 May 2000 04:00 GMT
Disposition: Resolved — CORBA 2.4
No Data Available
Updated: Fri, 6 Mar 2015 20:58 GMT