On Thu, Aug 28, 2008 at 9:00 AM, Giorgio M. <[EMAIL PROTECTED]>wrote:

> Thanks a lot Matthieu, i saw you are an ODE developer!!
>

And so is Tammo :)


>
> Please, could you be more precise in your explanation?
>
> - how can i subclass the ODEServer? it's just a class and it's not
> extendible.


public class MyServer extends ODEServer {
    protected void initBpelServer(EndpointReferenceContextImpl eprContext) {
      // Copy/paste the original with a few minor tweaks
    }
}

The initBpelServer method is private right now but that can be changed
easily. I'd advise the second option though, less fragile.


>
> - about the alternative: how can i build an Axis2 module?and what have i
> do with this module??


I'll point you to the Axis2 documentation, this is on Axis2 feature and is
just related to ODE because we use Axis2 for invocation.

http://ws.apache.org/axis2/1_4_1/modules.html


>
> - The message exchange interceptor is not a way to resolve my issue? can
> i make an interceptor and then intercept events regarding the invoke of
> a service (partner role ??)? at that point i could raise a fail or fault
> exception and then stop the process.
> Is it possible?
>

IIRC the mex interceptors are incoming messages only.

Matthieu


>
> Thanks very much for your help
>
> Giorgio
>
> Il giorno gio, 28/08/2008 alle 08.24 -0700, Matthieu Riou ha scritto:
> > On Thu, Aug 28, 2008 at 6:55 AM, Giorgio M. <[EMAIL PROTECTED]
> >wrote:
> >
> > > Ok, hence can i use interceptor in order to capture a service
> invocation
> > > message? i mean, can i capture single atomic service start event (that
> > > compose with the other service the process) instead of the more generic
> > > process start event? I need to intercept every single invocation (every
> > > single invoke within the BPEL process) and if the user is not
> > > authorized, generate an error and stop the process execution. Can I do
> > > it with Message Exchange Interceptors??
> > >
> >
> > Check the method createPartnerRoleChannel in BindingContextImpl. This get
> > called anytime a process that uses a new service is deployed. You'll
> > probably have to subclass ODEServer to plug in your implementation tough.
> >
> > An alternative could be an Axis2 module that would add an outgoing phase
> for
> > each invocation. There you could check your authorizations at first
> > invocation of an endpoing (an pass through every subsequent invocations).
> >
> > Matthieu
> >
> >
> > >
> > > thanks again for your precious help
> > >
> > > Giorgio
> > >
> > > Il giorno gio, 28/08/2008 alle 15.18 +0200, Tammo van Lessen ha
> scritto:
> > > > You don't have to compile ODE but you have to compile your java
> class.
> > > > If you use the Axis2 deployment of Ode you can simply add your
> class/jar
> > > > file to ode's WEB-INF/classes or WEB-INF/libs directory respectively.
> > > > Your classes are then included in the classpath and can be referenced
> > > > within Ode.
> > > >
> > > > Best,
> > > >   Tammo
> > > >
> > > > Giorgio M. wrote:
> > > > > Hi Tammo,
> > > > >
> > > > > thanks very much for your response, i'm going to look at the
> classes
> > > > > you've advised to me.
> > > > > I try to be more detailed about my issue: is there a way to attach
> a
> > > > > java class to the ODE (without compile it) that is called everytime
> > > each
> > > > > service (that compose the BPEL process) is called for the first
> time??
> > > > >
> > > > > The background of my ploblem is the following: i've the necessity
> to
> > > > > call a profiler that control permissions (each time that a service
> > > > > inside the BPEL process is called) in order to establish whether
> the
> > > > > caller is authorized or not to execute that service.
> > > > >
> > > > > Any suggestion?
> > > > >
> > > > > thanks a lot
> > > > >
> > > > > Il giorno gio, 28/08/2008 alle 14.39 +0200, Tammo van Lessen ha
> > > scritto:
> > > > >> Hi Giorgio,
> > > > >>
> > > > >> you could have a look at BpelEventListener.java and
> > > > >> MessageExchangeInterceptor.java as a starting point if you want to
> get
> > > > >> notified by execution events or want to intercept message
> exchanges.
> > > > >>
> > > > >> See also [1] and [2].
> > > > >>
> > > > >> HTH,
> > > > >>   Tammo
> > > > >>
> > > > >> [1]
> http://ode.apache.org/user-guide.html#UserGuide-ODEExecutionEvents
> > > > >> [2]
> > >
> http://www.intalio.org/confluence/display/PXE/Message+Exchange+Interceptors
> > > > >>
> > > > >> Giorgio M. wrote:
> > > > >>> Hi to all,
> > > > >>>
> > > > >>> i have the necessity to modify the Apache ODE source code in
> order to
> > > > >>> accomplish the following task: i've designed the BPEL process in
> wich
> > > > >>> several web services are invoked; i have to call, before each
> service
> > > > >>> invocation (INVOKE operation in BPEL), an external java class
> > > > >>> (implemented by myself)!
> > > > >>>
> > > > >>> Wich part of source code should i modify (where i can put the
> > > external
> > > > >>> java class call) in order to accomplish this task?? which is the
> > > class
> > > > >>> responsible of service invocation (i mean wich is the class where
> > > INVOKE
> > > > >>> operation is executed)??
> > > > >>>
> > > > >>> Hope somebody can help me
> > > > >>>
> > > > >>> thanks to everybody,
> > > > >>>
> > > > >>> best regards
> > > > >>>
> > > > >
> > > >
> > >
> > >
>
>

Reply via email to