> -----Original Message----- > From: news [mailto:[EMAIL PROTECTED] On Behalf Of Richard > Monson-Haefel > Sent: Sunday, November 02, 2003 7:06 PM > To: [EMAIL PROTECTED] > Subject: Re: JSR 109 MessageContext import > > > On 11/2/03 10:33 AM, in article > [EMAIL PROTECTED], > "Jeremy Boynes" <[EMAIL PROTECTED]> wrote: > > > IIRC the current 109 architecture plans to invoke EJBs using their > > normal remote interface. > > This is the first I've hear of this plan. Did I miss a beat? > I've kind of been distracted the past couple of days. >
I was looking here http://nagoya.apache.org/wiki/apachewiki.cgi?JSR109ProposalArchitecture which implies invocation through the remote interface. > > > > However, the invocation in Geronimo needs to attach a > MessageContext > > with the invocation and notify the EJB container that this is a > > web-service invocation rather than an component interface > invocation > > (so that the appropriate SessionContext methods can be enabled). > > There are a number of differences between a remote invocation > and an endpoint invocation. For one thing, the EJB Endpoint > implements (directly or > implicitly) an endpoint interface, rather than an EJBObject > type interface. Second, there may be a Message Handler chain > that needs to intercept incoming requests and that chain > works with a SAAJ Message object. Another thing, is the > MessageContext. It needs to be accessible to all of the > handlers and the bean instance through its SessionContext - > as you already mentioned. > > > > > This seems to imply that a different invocation API is > needed from the > > normal remote interface implementation. There may be a way > to hack it > > in using the client-side interceptor stack, but given this > is required > > functionality we should have a cleaner approach. > > My understanding is that the interceptor stack is supposed to > be flexible enough to allow different calling methods (e.g. > Remote IIOP, Remote JRMP, Local, etc.). Is this true? I mean > is it necessary to "hack" client- or server-side interceptor stack? > Yes it is - but you would need to construct an interceptor stack and invocation that indicates this is a web-service invocation rather than a remote interface invocation. I think this is the right way to go, but means that there needs to be a inflow interface between Axis/JST109 and Geronimo. The 'hack' I was referring to was some magic interceptor hooked into the EJBObject stack that tweaked the regular invocation into a web-service one. I think this is the wrong way to go. There's no panic here - I just wanted to raise the issue that simple invocation through the remote interface, as indicated in the wiki, may not be the way to go. -- jeremy