You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by Milinda Pathirage <mi...@gmail.com> on 2008/10/16 13:32:20 UTC

Debugging Support for BEL Processes

Hi,
Do ODE has debugging API for BPEL processes which we can use to set break
point remotely and get the present status of the running instances we are
interested. I saw that there are some support in BPEL compiler which will
include line numbers like information in compiled BPEL and from the Instance
Management API we can get activity information. Can we use those information
to implement remote debugging API. If the debugging support must impleement
from the begging how much effort it will take.

Thanks in advance,
Milinda


-- 
http://mpathirage.com
http://wso2.org "Oxygen for Web Service Developers"
http://wsaxc.blogspot.com "Web Services With Axis2/C"

Re: Debugging Support for BEL Processes

Posted by dileep_sivaraman <di...@infosys.com>.
Hi Milinda,

I have set the global breakpoint through remote calls itself.

Snippet:

rmiServer = (OdeRemote) (registry.lookup("jcaServer"));

// call the remote method

OdeTransportPipeRemote pipe = rmiServer.newPipe();


pipe.invokeConnectionMethod("addGlobalActivityBreakpoint(java.lang.String,java.lang.String)",new
Object[] 
{"{http://ode/bpel/unit-test}HelloWorld2-6","assign1" });


I hope this helps and sorry for replying late.



Thanks

Dileep




Milinda Pathirage wrote:
> 
> Hi Dileep,
> 
> How you set the global breakpoint using Management API? Through a remote
> call?
> 
> Thanks,
> Milinda
> 
> On Sun, Nov 30, 2008 at 9:18 PM, Milinda Pathirage <
> milinda.pathirage@gmail.com> wrote:
> 
>> Thanks Dileep. I'll have a look at it.
>>
>> Milinda
>>
>> On Fri, Nov 28, 2008 at 2:44 PM, dileep_sivaraman <
>> dileep_sivaraman@infosys.com> wrote:
>>
>>>
>>>
>>> Hi Milinda,
>>>
>>> I am not sure if this is exactly what you are looking for.
>>>
>>> To check if debugging actually works or not,I just tested the 'add
>>> breakpoint' and resume functionality provided by management API's.
>>>
>>>
>>> Apache ODE :1.2 version
>>>
>>> Server: Apache tomcat
>>>
>>> Example : hello World that comes packed with the war
>>>
>>>
>>>
>>> 1) I first added a global breakpoint for assign activity "assign1" in
>>> the
>>> hello world example.
>>>
>>> 2) The I ran the Hello World Example.(Sure enough it got suspended)
>>>
>>> Apache Console Log:
>>>
>>> DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: FOUND
>>> match
>>> for N
>>> EW instance mexRef={MyRoleMex#hqejbhcnphr3saqv7i1iir [Client
>>> hqejbhcnphr3saqv7i1
>>> iiq] calling {http://ode/bpel/unit-test.wsdl}HelloService.hello(...)
>>> }
>>> DEBUG - GeronimoLog.debug(66) | Setting execution state on instance
>>> 544603
>>>
>>> 3) I then checked the status of the Process Instance
>>>
>>> My RMI Test Client Log:
>>>
>>> NAME :HelloWorld2
>>>
>>> START DATE :2008-11-28T17:08:43.452+08:00
>>>
>>> LAST ACTIVE DATE :2008-11-28T17:08:43.577+08:00
>>>
>>> STATUS_ :SUSPENDED
>>>
>>>
>>> 4) Next I called the resume() API with the Instance ID:544603
>>>
>>>
>>> 5) The instance ran to completion.
>>>
>>> Apache Console Log:
>>>
>>> DEBUG - GeronimoLog.debug(66) | Reply for
>>> helloWorld.{http://ode/bpel/unit-test.
>>> wsdl}hello
>>> DEBUG - GeronimoLog.debug(66) | Reply message <?xml version='1.0'
>>> encoding='utf-
>>> 8'?>
>>>
>>> testing
>>> World
>>>
>>>
>>> 6) I once again checked the status of that instance.
>>>
>>> My RMI Test Client Log:
>>>
>>> NAME :HelloWorld2
>>>
>>> START DATE :2008-11-28T17:08:43.452+08:00
>>>
>>> LAST ACTIVE DATE :2008-11-28T17:09:32.733+08:00
>>>
>>> STATUS_ :COMPLETED
>>>
>>>
>>>
>>>
>>> So atleast I can assure you that Debugging works.Now what you want is
>>> actually upto you.
>>>
>>>
>>> Thanks
>>> Dileep
>>> --
>>> View this message in context:
>>> http://www.nabble.com/Debugging-Support-for-BEL-Processes-tp20011863p20731080.html
>>> Sent from the Apache Ode Dev mailing list archive at Nabble.com.
>>>
>>
>>
>>
>> --
>> http://mpathirage.com
>> http://wso2.org "Oxygen for Web Service Developers"
>> http://wsaxc.blogspot.com "Web Services With Axis2/C"
>>
> 
> 
> 
> -- 
> http://mpathirage.com
> http://wso2.org "Oxygen for Web Service Developers"
> http://wsaxc.blogspot.com "Web Services With Axis2/C"
> 
> 

-- 
View this message in context: http://www.nabble.com/Debugging-Support-for-BEL-Processes-tp20011863p20932076.html
Sent from the Apache Ode Dev mailing list archive at Nabble.com.

Re: Debugging Support for BEL Processes

Posted by Milinda Pathirage <mi...@gmail.com>.
Hi Dileep,

How you set the global breakpoint using Management API? Through a remote
call?

Thanks,
Milinda

On Sun, Nov 30, 2008 at 9:18 PM, Milinda Pathirage <
milinda.pathirage@gmail.com> wrote:

> Thanks Dileep. I'll have a look at it.
>
> Milinda
>
> On Fri, Nov 28, 2008 at 2:44 PM, dileep_sivaraman <
> dileep_sivaraman@infosys.com> wrote:
>
>>
>>
>> Hi Milinda,
>>
>> I am not sure if this is exactly what you are looking for.
>>
>> To check if debugging actually works or not,I just tested the 'add
>> breakpoint' and resume functionality provided by management API's.
>>
>>
>> Apache ODE :1.2 version
>>
>> Server: Apache tomcat
>>
>> Example : hello World that comes packed with the war
>>
>>
>>
>> 1) I first added a global breakpoint for assign activity "assign1" in the
>> hello world example.
>>
>> 2) The I ran the Hello World Example.(Sure enough it got suspended)
>>
>> Apache Console Log:
>>
>> DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: FOUND match
>> for N
>> EW instance mexRef={MyRoleMex#hqejbhcnphr3saqv7i1iir [Client
>> hqejbhcnphr3saqv7i1
>> iiq] calling {http://ode/bpel/unit-test.wsdl}HelloService.hello(...)<http://ode/bpel/unit-test.wsdl%7DHelloService.hello%28...%29>
>> }
>> DEBUG - GeronimoLog.debug(66) | Setting execution state on instance 544603
>>
>> 3) I then checked the status of the Process Instance
>>
>> My RMI Test Client Log:
>>
>> NAME :HelloWorld2
>>
>> START DATE :2008-11-28T17:08:43.452+08:00
>>
>> LAST ACTIVE DATE :2008-11-28T17:08:43.577+08:00
>>
>> STATUS_ :SUSPENDED
>>
>>
>> 4) Next I called the resume() API with the Instance ID:544603
>>
>>
>> 5) The instance ran to completion.
>>
>> Apache Console Log:
>>
>> DEBUG - GeronimoLog.debug(66) | Reply for
>> helloWorld.{http://ode/bpel/unit-test.
>> wsdl}hello
>> DEBUG - GeronimoLog.debug(66) | Reply message <?xml version='1.0'
>> encoding='utf-
>> 8'?>
>>
>> testing
>> World
>>
>>
>> 6) I once again checked the status of that instance.
>>
>> My RMI Test Client Log:
>>
>> NAME :HelloWorld2
>>
>> START DATE :2008-11-28T17:08:43.452+08:00
>>
>> LAST ACTIVE DATE :2008-11-28T17:09:32.733+08:00
>>
>> STATUS_ :COMPLETED
>>
>>
>>
>>
>> So atleast I can assure you that Debugging works.Now what you want is
>> actually upto you.
>>
>>
>> Thanks
>> Dileep
>> --
>> View this message in context:
>> http://www.nabble.com/Debugging-Support-for-BEL-Processes-tp20011863p20731080.html
>> Sent from the Apache Ode Dev mailing list archive at Nabble.com.
>>
>
>
>
> --
> http://mpathirage.com
> http://wso2.org "Oxygen for Web Service Developers"
> http://wsaxc.blogspot.com "Web Services With Axis2/C"
>



-- 
http://mpathirage.com
http://wso2.org "Oxygen for Web Service Developers"
http://wsaxc.blogspot.com "Web Services With Axis2/C"

Re: Debugging Support for BEL Processes

Posted by Milinda Pathirage <mi...@gmail.com>.
Thanks Dileep. I'll have a look at it.

Milinda

On Fri, Nov 28, 2008 at 2:44 PM, dileep_sivaraman <
dileep_sivaraman@infosys.com> wrote:

>
>
> Hi Milinda,
>
> I am not sure if this is exactly what you are looking for.
>
> To check if debugging actually works or not,I just tested the 'add
> breakpoint' and resume functionality provided by management API's.
>
>
> Apache ODE :1.2 version
>
> Server: Apache tomcat
>
> Example : hello World that comes packed with the war
>
>
>
> 1) I first added a global breakpoint for assign activity "assign1" in the
> hello world example.
>
> 2) The I ran the Hello World Example.(Sure enough it got suspended)
>
> Apache Console Log:
>
> DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: FOUND match
> for N
> EW instance mexRef={MyRoleMex#hqejbhcnphr3saqv7i1iir [Client
> hqejbhcnphr3saqv7i1
> iiq] calling {http://ode/bpel/unit-test.wsdl}HelloService.hello(...)<http://ode/bpel/unit-test.wsdl%7DHelloService.hello%28...%29>
> }
> DEBUG - GeronimoLog.debug(66) | Setting execution state on instance 544603
>
> 3) I then checked the status of the Process Instance
>
> My RMI Test Client Log:
>
> NAME :HelloWorld2
>
> START DATE :2008-11-28T17:08:43.452+08:00
>
> LAST ACTIVE DATE :2008-11-28T17:08:43.577+08:00
>
> STATUS_ :SUSPENDED
>
>
> 4) Next I called the resume() API with the Instance ID:544603
>
>
> 5) The instance ran to completion.
>
> Apache Console Log:
>
> DEBUG - GeronimoLog.debug(66) | Reply for
> helloWorld.{http://ode/bpel/unit-test.
> wsdl}hello
> DEBUG - GeronimoLog.debug(66) | Reply message <?xml version='1.0'
> encoding='utf-
> 8'?>
>
> testing
> World
>
>
> 6) I once again checked the status of that instance.
>
> My RMI Test Client Log:
>
> NAME :HelloWorld2
>
> START DATE :2008-11-28T17:08:43.452+08:00
>
> LAST ACTIVE DATE :2008-11-28T17:09:32.733+08:00
>
> STATUS_ :COMPLETED
>
>
>
>
> So atleast I can assure you that Debugging works.Now what you want is
> actually upto you.
>
>
> Thanks
> Dileep
> --
> View this message in context:
> http://www.nabble.com/Debugging-Support-for-BEL-Processes-tp20011863p20731080.html
> Sent from the Apache Ode Dev mailing list archive at Nabble.com.
>



-- 
http://mpathirage.com
http://wso2.org "Oxygen for Web Service Developers"
http://wsaxc.blogspot.com "Web Services With Axis2/C"

Re: Debugging Support for BEL Processes

Posted by dileep_sivaraman <di...@infosys.com>.

Hi Milinda,

I am not sure if this is exactly what you are looking for.

To check if debugging actually works or not,I just tested the 'add
breakpoint' and resume functionality provided by management API's.


Apache ODE :1.2 version

Server: Apache tomcat

Example : hello World that comes packed with the war



1) I first added a global breakpoint for assign activity "assign1" in the
hello world example.

2) The I ran the Hello World Example.(Sure enough it got suspended)

Apache Console Log:

DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: FOUND match
for N
EW instance mexRef={MyRoleMex#hqejbhcnphr3saqv7i1iir [Client
hqejbhcnphr3saqv7i1
iiq] calling {http://ode/bpel/unit-test.wsdl}HelloService.hello(...)}
DEBUG - GeronimoLog.debug(66) | Setting execution state on instance 544603

3) I then checked the status of the Process Instance

My RMI Test Client Log:

NAME :HelloWorld2

START DATE :2008-11-28T17:08:43.452+08:00

LAST ACTIVE DATE :2008-11-28T17:08:43.577+08:00

STATUS_ :SUSPENDED


4) Next I called the resume() API with the Instance ID:544603


5) The instance ran to completion.

Apache Console Log:

DEBUG - GeronimoLog.debug(66) | Reply for
helloWorld.{http://ode/bpel/unit-test.
wsdl}hello
DEBUG - GeronimoLog.debug(66) | Reply message <?xml version='1.0'
encoding='utf-
8'?>

testing
World


6) I once again checked the status of that instance.

My RMI Test Client Log:

NAME :HelloWorld2

START DATE :2008-11-28T17:08:43.452+08:00

LAST ACTIVE DATE :2008-11-28T17:09:32.733+08:00

STATUS_ :COMPLETED




So atleast I can assure you that Debugging works.Now what you want is
actually upto you.


Thanks
Dileep
-- 
View this message in context: http://www.nabble.com/Debugging-Support-for-BEL-Processes-tp20011863p20731080.html
Sent from the Apache Ode Dev mailing list archive at Nabble.com.

Re: Debugging Support for BEL Processes

Posted by Milinda Pathirage <mi...@gmail.com>.
Thanks for you help.

Milinda.

On Thu, Oct 16, 2008 at 8:36 PM, Matthieu Riou <ma...@offthelip.org>wrote:

> On Thu, Oct 16, 2008 at 5:07 AM, Tammo van Lessen <tvanlessen@gmail.com
> >wrote:
>
> > Hi Milinda,
> >
> > at the time when ODE was still PXE, there was support for debugging with
> > breakpoints. It was integrated with Sun's netbeans and worked quite
> > well. I'm not sure which parts of this survived the incubation but at
> > least some relics are still there:
> >
> > engine/src/main/java/org/apache/ode/bpel/runtime/breaks.
> >
> > If my eclipse was currently running I'd try a Ctrl-Shift-G on these
> > classes.
> >
>
> Yep, what Tammo said. I'm pretty sure it's completely broken right now
> given
> that it hasn't been used in ages but the logic in the runtime is still
> there. Reviving the thing would probably not be too hard but you'd have to
> find your way around in the runtime and add some debugging primitives in
> the
> remote API if you want to debug remotely. Following the trail that Tammo
> pointed you toward might be a good start.
>
> Cheers,
> Tammo
>
>
> >
> > Cheers,
> >   Tammo
> >
> > Milinda Pathirage wrote:
> > > Hi,
> > > Do ODE has debugging API for BPEL processes which we can use to set
> break
> > > point remotely and get the present status of the running instances we
> are
> > > interested. I saw that there are some support in BPEL compiler which
> will
> > > include line numbers like information in compiled BPEL and from the
> > Instance
> > > Management API we can get activity information. Can we use those
> > information
> > > to implement remote debugging API. If the debugging support must
> > impleement
> > > from the begging how much effort it will take.
> > >
> > > Thanks in advance,
> > > Milinda
> > >
> > >
> >
> >
>



-- 
http://mpathirage.com
http://wso2.org "Oxygen for Web Service Developers"
http://wsaxc.blogspot.com "Web Services With Axis2/C"

Re: Debugging Support for BEL Processes

Posted by Matthieu Riou <ma...@offthelip.org>.
On Thu, Oct 16, 2008 at 5:07 AM, Tammo van Lessen <tv...@gmail.com>wrote:

> Hi Milinda,
>
> at the time when ODE was still PXE, there was support for debugging with
> breakpoints. It was integrated with Sun's netbeans and worked quite
> well. I'm not sure which parts of this survived the incubation but at
> least some relics are still there:
>
> engine/src/main/java/org/apache/ode/bpel/runtime/breaks.
>
> If my eclipse was currently running I'd try a Ctrl-Shift-G on these
> classes.
>

Yep, what Tammo said. I'm pretty sure it's completely broken right now given
that it hasn't been used in ages but the logic in the runtime is still
there. Reviving the thing would probably not be too hard but you'd have to
find your way around in the runtime and add some debugging primitives in the
remote API if you want to debug remotely. Following the trail that Tammo
pointed you toward might be a good start.

Cheers,
Tammo


>
> Cheers,
>   Tammo
>
> Milinda Pathirage wrote:
> > Hi,
> > Do ODE has debugging API for BPEL processes which we can use to set break
> > point remotely and get the present status of the running instances we are
> > interested. I saw that there are some support in BPEL compiler which will
> > include line numbers like information in compiled BPEL and from the
> Instance
> > Management API we can get activity information. Can we use those
> information
> > to implement remote debugging API. If the debugging support must
> impleement
> > from the begging how much effort it will take.
> >
> > Thanks in advance,
> > Milinda
> >
> >
>
>

Re: Debugging Support for BEL Processes

Posted by Tammo van Lessen <tv...@gmail.com>.
Hi Milinda,

at the time when ODE was still PXE, there was support for debugging with
breakpoints. It was integrated with Sun's netbeans and worked quite
well. I'm not sure which parts of this survived the incubation but at
least some relics are still there:

engine/src/main/java/org/apache/ode/bpel/runtime/breaks.

If my eclipse was currently running I'd try a Ctrl-Shift-G on these classes.

Cheers,
  Tammo

Milinda Pathirage wrote:
> Hi,
> Do ODE has debugging API for BPEL processes which we can use to set break
> point remotely and get the present status of the running instances we are
> interested. I saw that there are some support in BPEL compiler which will
> include line numbers like information in compiled BPEL and from the Instance
> Management API we can get activity information. Can we use those information
> to implement remote debugging API. If the debugging support must impleement
> from the begging how much effort it will take.
> 
> Thanks in advance,
> Milinda
> 
> 


RE: Debugging Support for BEL Processes

Posted by "Nowakowski, Mateusz" <Ma...@sabre-holdings.com>.
I'm not ODE developer, but as far as I know, ODE hasn't got such
functionality.

One workaround I know, is to implement own event listener to log events
and use deprecated EventContext class to obtain variables. But this
class is deprecated, because it simply doesn't work especially for in
memory processes. So now it is difficult to see exactly what is going
on.


-- 
Regards
Mateusz Nowakowski

-----Original Message-----
From: Milinda Pathirage [mailto:milinda.pathirage@gmail.com] 
Sent: Thursday, October 16, 2008 1:32 PM
To: dev@ode.apache.org
Subject: Debugging Support for BEL Processes

Hi,
Do ODE has debugging API for BPEL processes which we can use to set
break
point remotely and get the present status of the running instances we
are
interested. I saw that there are some support in BPEL compiler which
will
include line numbers like information in compiled BPEL and from the
Instance
Management API we can get activity information. Can we use those
information
to implement remote debugging API. If the debugging support must
impleement
from the begging how much effort it will take.

Thanks in advance,
Milinda


-- 
http://mpathirage.com
http://wso2.org "Oxygen for Web Service Developers"
http://wsaxc.blogspot.com "Web Services With Axis2/C"