> -----Original Message-----
> From: Jeremy Boynes [mailto:[EMAIL PROTECTED]
> Sent: Monday, May 24, 2004 9:22 PM
> To: [EMAIL PROTECTED]
> Subject: Re: [openejb-dev] Problem with lifecycle methods sneaking
around
> the interceptor stack (lots of tests are failing)
> 
> Dain Sundstrom wrote:
> 
> > On May 24, 2004, at 7:53 PM, David Jencks wrote:
> >
> >>
> >> I suspect similar problems hold for ejbActivate, ejbPassivate, and
> >> ejbLoad.
> >
> >
> > I'm not sure what we do here.  Since these call backs can happen at
any
> > time, I'm not sure what the "right" identity will be.
> >
> 
> Simple case first: ejbActivate and ejbPassivate do not allow access to
> the getCallerPrincipal or isCallerInRole so I would say that in these
> methods the identity is at best "undefined", most likely that of the
> container.

I think that a IllegalStateException is supposed to be thrown.

> I have not found anything in the spec that defines the identity that
> should be used in ejbLoad and ejbStore. The issue is that the
invocation
> of these is linked to the transaction context and not the invocation,
so
> if the identity changes during a transaction (e.g. due to run-as) then
> they may be invoked with different identities.
> 
> My gut feeling is that these can be invoked with whatever is the
> identity /at the time of invocation/ which may be the caller identity
> otr may be a run-as identity depending on just when the invocation
occurs.
> 
> In reality, I don't think this ambiguity will cause any issue. It
would
> only impact the case where caller identity was being used to sign onto
a
> RM and where run-as was being used to override that - I think this is
> rare.

I agree.

Regards,
Alan


Reply via email to