geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jarek Gawor" <>
Subject EJB and JAXWS integration
Date Wed, 28 Mar 2007 17:29:32 GMT
David, Dain,

I've been looking more into the OpenEJB and JAX-WS integration and I
think I identified a few things that I will need from the OpenEJB code
in order to get this integration done.

1) Handlers and security

After looking at EJB interceptors and JAX-WS handlers and realizing
that they are not quite the same I decided to let the JAX-WS engine to
invoke its handlers and EJB engine to invoke its interceptors (instead
of somehow wrapping a JAX-WS handler into an EJB interceptor). The
only thing that I need to do for handlers is ensure that method-level
authorization is performed before any JAX-WS handlers are executed.
For that, I believe I need to perform the following check in the very
first handler:

   getSecurityService().isCallerAuthorized(callMethod, null);

So, if in Geronimo I could somehow get a reference to the
SecurityService from DeploymentInfo or RpcContainer I would be set.

2)  InvocationContext and delaying deserialization/serialization of parameters

If OpenEJB allowed Geronimo to pass a custom implementation of the
InvocationContext object (e.g. maybe an extension of
ReflectionInvocationContext) I could modify it so that:

  a) getContextData() would return the same object as MessageContext
(as per spec)
  b) getParameters() would deserialize the SOAP message (delay deseralization)
  c) setParameters() would update the SOAP message
  d) proceed() would keep the object returned and the SOAP message in synch



View raw message