Re: [Carbon-dev] Events that can be analysed by the MessageExchangeInterceptor of a BPEL process

2010-06-24 Thread Isuru Wimalasundera
Hi All

The progress update of the project
Has been able to complete some major phases of the project.


   1. The new data publisher for bpel is completed. which is the
   BpelStatsPublisher
   2. Did necessary changes to add BPS server successfully to BAM to be able
   to monitor.
   3. Events generated at BPS is successfully being received to the BAM side
   and populated the database.
   4. Creating new data service to retrieve BPS related data from the data
   base.
   5. First gadget to represent BPEL stats is almost on completion.

The work to be done

   1. few modifications and issues to be solved on the data receiving part
   of BAM, will be completed on next week.
   2. design gadgets in the best way to analyse bpel event data.

Thank You
IsuruW
___
Carbon-dev mailing list
Carbon-dev@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev


Re: [Carbon-dev] Events that can be analysed by the MessageExchangeInterceptor of a BPEL process

2010-06-01 Thread Isuru Wimalasundera
Hi all

I changed the xml message format of the message related to events. Just like
Dumindu and Ratha suggested here
I organized the message as Key/Value pairs of server level data. And here I
also used a unique Id to identify a one particular life cycle of events of a
process. The message looks as follows (but this message is still missing the
server information at the begining).

http://wso2.org/ns/2009/09/bps/server/user-defined/data";>
 


eb7d2d8a-3842-4c35-a3b5-4cd62395cbd8_ProcessName
{http://ode/bpel/unit-test}HelloWorld3-11




eb7d2d8a-3842-4c35-a3b5-4cd62395cbd8_TimeStamp
Tue Jun 01 18:31:14 IST 2010



eb7d2d8a-3842-4c35-a3b5-4cd62395cbd8_InstanceId
0



eb7d2d8a-3842-4c35-a3b5-4cd62395cbd8_Operation




eb7d2d8a-3842-4c35-a3b5-4cd62395cbd8_MessageExchangeId




eb7d2d8a-3842-4c35-a3b5-4cd62395cbd8_PartnerLinkModelId
29



eb7d2d8a-3842-4c35-a3b5-4cd62395cbd8_PartnerLinkName
MultiplierPartnerLink



eb7d2d8a-3842-4c35-a3b5-4cd62395cbd8_InstanceCompleationStatus




eb7d2d8a-3842-4c35-a3b5-4cd62395cbd8_FailureReason


 


The project is now continuing towards Data receivers, persisting Event data
on database, writing appropriate gadgets for data representation.

Kindly request feedbacks and suggestions

Thank you
IsuruW



On Tue, May 25, 2010 at 5:49 PM, Vijayaratha Vijayasingam
wrote:

>
>
> On 24 May 2010 17:56, Isuru Wimalasundera  wrote:
>
>> Hi all
>>
>> Yes the Event contains a XML message , as I have implemented a statistics
>> data publisher for this task
>> the generating XML message looks like below.
>>
>> http://wso2.org/ns/2009/09/bps/bpel/statistics/data";>
>> 
>> 
>> {http://ode/bpel/unit-test}HelloWorld3-10
>> 
>> Mon May 24 17:17:00 IST
>> 2010
>> 1
>> 
>> 
>> 29
>>
>> MultiplierPartnerLink
>>
>> 
>> 
>> 
>> 
>>
>> A XML message in this format get created for all the events given in the
>> event plan. This is a xml related to a partner service invocation of a bpel
>> process.
>>
>> But I just need to clarify whether my use of a statistics data publisher
>> for this task is ok, since Dumindu has told
>> me that its better to get these events as server level user defined data
>> with Key/Value pairs.
>
>
> yes it would be easy rather introducing new tables. Like Samisa told, you
> can use uniqueid/activityid to identify new instance and the related partner
> services of a process.
> Then the each key element would start with the uniqueid.
> eg;- uniqueid_bpelprocessname
>  uniqueid_bpelprocessstarttime
> You can follow mediation publisher as an example for a such formatting of
> the event.
>
> Thanks.
> -Ratha.
>
>
>> Request kind attention on this matter and please let some feedback on
>> this.
>>
>> currently working on learning how the BAM Data Receivers work, and how to
>> implement a one for this project with the help of Ratha.
>>
>> Thank You
>> IsuruW
>>
>>
>>
>> ___
>> Carbon-dev mailing list
>> Carbon-dev@wso2.org
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev
>>
>>
>
> ___
> Carbon-dev mailing list
> Carbon-dev@wso2.org
> https://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev
>
>
___
Carbon-dev mailing list
Carbon-dev@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev


Re: [Carbon-dev] Events that can be analysed by the MessageExchangeInterceptor of a BPEL process

2010-05-25 Thread Vijayaratha Vijayasingam
On 24 May 2010 17:56, Isuru Wimalasundera  wrote:

> Hi all
>
> Yes the Event contains a XML message , as I have implemented a statistics
> data publisher for this task
> the generating XML message looks like below.
>
> http://wso2.org/ns/2009/09/bps/bpel/statistics/data";>
> 
> 
> {http://ode/bpel/unit-test}HelloWorld3-10
> 
> Mon May 24 17:17:00 IST
> 2010
> 1
> 
> 
> 29
>
> MultiplierPartnerLink
>
> 
> 
> 
> 
>
> A XML message in this format get created for all the events given in the
> event plan. This is a xml related to a partner service invocation of a bpel
> process.
>
> But I just need to clarify whether my use of a statistics data publisher
> for this task is ok, since Dumindu has told
> me that its better to get these events as server level user defined data
> with Key/Value pairs.


yes it would be easy rather introducing new tables. Like Samisa told, you
can use uniqueid/activityid to identify new instance and the related partner
services of a process.
Then the each key element would start with the uniqueid.
eg;- uniqueid_bpelprocessname
 uniqueid_bpelprocessstarttime
You can follow mediation publisher as an example for a such formatting of
the event.

Thanks.
-Ratha.


> Request kind attention on this matter and please let some feedback on this.
>
> currently working on learning how the BAM Data Receivers work, and how to
> implement a one for this project with the help of Ratha.
>
> Thank You
> IsuruW
>
>
>
> ___
> Carbon-dev mailing list
> Carbon-dev@wso2.org
> https://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev
>
>
___
Carbon-dev mailing list
Carbon-dev@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev


Re: [Carbon-dev] Events that can be analysed by the MessageExchangeInterceptor of a BPEL process

2010-05-24 Thread Isuru Wimalasundera
Hi all

Yes the Event contains a XML message , as I have implemented a statistics
data publisher for this task
the generating XML message looks like below.

http://wso2.org/ns/2009/09/bps/bpel/statistics/data";>

{http://ode/bpel/unit-test}HelloWorld3-10

Mon May 24 17:17:00 IST
2010
1


29

MultiplierPartnerLink






A XML message in this format get created for all the events given in the
event plan. This is a xml related to a partner service invocation of a bpel
process.

But I just need to clarify whether my use of a statistics data publisher for
this task is ok, since Dumindu has told
me that its better to get these events as server level user defined data
with Key/Value pairs. Request kind attention on this matter and please let
some feedback on this.

currently working on learning how the BAM Data Receivers work, and how to
implement a one for this project with the help of Ratha.

Thank You
IsuruW


On Thu, May 20, 2010 at 11:40 AM, Samisa Abeysinghe  wrote:

> Do you have an XML message with the real event?
>
> Samisa...
>
>
>
>
>
___
Carbon-dev mailing list
Carbon-dev@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev


Re: [Carbon-dev] Events that can be analysed by the MessageExchangeInterceptor of a BPEL process

2010-05-19 Thread Samisa Abeysinghe
Do you have an XML message with the real event?

Samisa...

On Sun, May 16, 2010 at 1:16 PM, Isuru Wimalasundera wrote:

> Hi
>
> *Current Event plan Proposed to monitor a BPEL Process (The Weekly Update)
> *
>
> Last couple of weeks I was working on planing  what are the events needed
> to be monitored by BAM and making
> an event plan for the project. In this project we have already had two
> event listener classes, one which implements the BpelEventListener interface
> and the other which implements MessageExchangeInterceptor interface. At the
> begining theplan was to use either one of them to track events, but as the
> requirements were identified I decided to use both these implementationsas
> they track different events of a BPEL process.
>
> The Event plan is as follows;
>
> Mainly the events are gathered from six activity phases of a BPEL process;
>
> Process Invoked Event
>when a new BPEL process is invoked an event will be generated.
> Under this event there will be
>attributes like Process Name and time stamp value to uniquely
> identify the process invocation.
>
> New instance creation of a process
>   This event will get invoked when a new instance of the BPEL
> process is being created. This event contains
> attributes like the name of the process, the time stamp value to get the
> created time, an instance id touniquely identify the created
> instance and the current operation of the process .
>
> Starting the newly created Instance
> This event get invoked when a created instance get started. this event
> holds attributes like process name,   time stamp value, the instance id to
> identify the started instance.
>
> Message Exchange of an Instance
> This event get triggered when a process instance has received a message at
> any level; like for the invocation of an instance, invocation of a scope and
> an actvity. This event contains attributes like process name , time stamp,
> instance id, the current operation of the process which receives the message
> and an message exchange id which is a string to identify a message received.
>
>
> Partner service invocation from a process
> when the bpel process calls for an external web service this event will get
> triggered. A bpel process is linked with an partner service through a
> partner link,therefore this event contains information about this partner
> link mostly. This event contains process name, time stamp, instance id,
> partner link id and the name of the partner service invoked.
>
> A Failure of an Activity
> when any kind of failure occured at an Activity of a process this event
> will get triggered. Either it is a system failure or a failure in the BPEL
> process this event will get triggered. This event contains information like
> process Id, time stamp, instance id, the activity id of the Activity which
> got failed and the reason for the failure.
>
> Successful completion of the process instance
> This get invoked when a process instance completes its instance life cycle
> and no failure occured. This event contains basic attributes like Process
> Id, time stamp and Instance Id.
>
> These generated events has been able to publish as WS-Events successfully
> after writing an event publisher  class following the New BAM Data
> publisher.This is the latest Event plan that I have come up with, request
> any suggestions or modifications on this. From here onwards the project
> needed to be continue towards using these published events on BAM, kindly
> request suggestions for the next phases of the project.
>
> Thank You
> IsuruW
>
>
>
>
>
>
>
>
>
>
>
>
> ___
> Carbon-dev mailing list
> Carbon-dev@wso2.org
> https://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev
>
> Samisa Abeysinghe
VP Engineering
WSO2 Inc.
http://wso2.com
http://wso2.org
___
Carbon-dev mailing list
Carbon-dev@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev


Re: [Carbon-dev] Events that can be analysed by the MessageExchangeInterceptor of a BPEL process

2010-05-16 Thread Isuru Wimalasundera
Hi

*Current Event plan Proposed to monitor a BPEL Process (The Weekly Update)*

Last couple of weeks I was working on planing  what are the events needed to
be monitored by BAM and making
an event plan for the project. In this project we have already had two event
listener classes, one which implements the BpelEventListener interface and
the other which implements MessageExchangeInterceptor interface. At the
begining theplan was to use either one of them to track events, but as the
requirements were identified I decided to use both these implementationsas
they track different events of a BPEL process.

The Event plan is as follows;

Mainly the events are gathered from six activity phases of a BPEL process;

Process Invoked Event
   when a new BPEL process is invoked an event will be generated.
Under this event there will be
   attributes like Process Name and time stamp value to uniquely
identify the process invocation.

New instance creation of a process
  This event will get invoked when a new instance of the BPEL
process is being created. This event contains
attributes like the name of the process, the time stamp value to get the
created time, an instance id touniquely identify the created
instance and the current operation of the process .

Starting the newly created Instance
This event get invoked when a created instance get started. this event holds
attributes like process name,   time stamp value, the instance id to
identify the started instance.

Message Exchange of an Instance
This event get triggered when a process instance has received a message at
any level; like for the invocation of an instance, invocation of a scope and
an actvity. This event contains attributes like process name , time stamp,
instance id, the current operation of the process which receives the message
and an message exchange id which is a string to identify a message received.


Partner service invocation from a process
when the bpel process calls for an external web service this event will get
triggered. A bpel process is linked with an partner service through a
partner link,therefore this event contains information about this partner
link mostly. This event contains process name, time stamp, instance id,
partner link id and the name of the partner service invoked.

A Failure of an Activity
when any kind of failure occured at an Activity of a process this event will
get triggered. Either it is a system failure or a failure in the BPEL
process this event will get triggered. This event contains information like
process Id, time stamp, instance id, the activity id of the Activity which
got failed and the reason for the failure.

Successful completion of the process instance
This get invoked when a process instance completes its instance life cycle
and no failure occured. This event contains basic attributes like Process
Id, time stamp and Instance Id.

These generated events has been able to publish as WS-Events successfully
after writing an event publisher  class following the New BAM Data
publisher.This is the latest Event plan that I have come up with, request
any suggestions or modifications on this. From here onwards the project
needed to be continue towards using these published events on BAM, kindly
request suggestions for the next phases of the project.

Thank You
IsuruW
___
Carbon-dev mailing list
Carbon-dev@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev


Re: [Carbon-dev] Events that can be analysed by the MessageExchangeInterceptor of a BPEL process

2010-05-02 Thread Isuru Wimalasundera
Hi

Currently I am working on this final event format which will contain the
data discussed above, hoping to have a discussion with Milinda aiyya on
Monday regarding what exact data needed to be contained in this format out
of the stuff that I have come up with and also about tracking data about new
instance creation of a bpel process.

Thank You
IsuruW


On Sun, May 2, 2010 at 9:30 AM, Samisa Abeysinghe  wrote:

> Have you designed the event format for this? If so please send it over so
> that we can have a look.
>
> If it is not defined, I suggest that you design that to capture the data
> discussed here.
>
> Thanks,
> Samisa...
>
>
> On Fri, Apr 30, 2010 at 4:05 PM, Isuru Wimalasundera wrote:
>
>> Hi
>>
>> yes that would be really useful because catching events on new instance
>> creation can be really essential.
>>
>> Today had a discussion with Waruna and got information on some of the data
>> that I tried to retrieve from events (as mentioned in my first message),and
>> also discussed the necessity of some data according to the requirement of
>> this project.
>>
>> After talking with Waruna and going through all the event data retrieved,
>> I thought about some important events that would be really useful to be
>> monitored by BAM. Mainly it is necessary to find whether it is possible to
>> analyse events when the bpel process is being invoked by a request. As the
>> method onProcessInvoked() is working it is possible to track when a process
>> is invoked. It has to be notified whether the particular process invocation
>> is successful or not. May be this can be done by reading the process state
>> of the event, and it is still there to be tested. And there can be other
>> data such as process Id and the process invoked time as additional info
>> about the process invocation.
>>
>> Then it is necessary to catch events when a new instance of the bpel
>> process is being created and invoked. I guess we have to check whether the
>> new instance creation is successful  or failed. To catch these events, just
>> like Milinda aiyya replied we have to make the onNewInstanceInvoked() method
>> working.Then from the newly created process instance all the partner
>> services will get invoked respectively and it is necessary to track events
>> of these partner services. From within the onPartnerInvoked()  method we
>> have to track important information like succesful partner service requests,
>> fault requests and partner service ID s, partnet role names ,etc to
>> recognize the external web services.
>>
>> Another important thing is to identify which partner service belongs to
>> which process instance, Becasue at same time many request can come to the
>> same process and create many instances and they all will trigger same web
>> services. Once Samisa sir suggested to give an unique Actvity ID to the new
>> instance and for all the related partner services to the process. It is
>> essential to find a way to fulfill this requirement. Request suggestions.
>>
>> And finally it is necessary to identify whether the created new instance
>> complete the process successfully or not. for that we have to identify
>> whether the process successfully return a respond to a client. Now it is
>> needed to clearly identify what are the properties that should be included
>> in to these events that I mentioned above, and need to clarify these
>> attributes against the need of BPS. Request suggestions on the Event plan.
>>
>> Thank You
>> IsuruW
>>
>>
>>
>>
>> On Fri, Apr 30, 2010 at 9:59 AM, Milinda Pathirage wrote:
>>
>>> Please find my comments inline.
>>>
>>> On Fri, Apr 30, 2010 at 8:57 AM, Waruna Ranasinghe wrote:
>>>


 On Thu, Apr 29, 2010 at 6:30 PM, Isuru Wimalasundera 
 wrote:

> Hi ,
>
> As I am working in the project Monitoring* *a BPEL process on WSO2 BPS
> by using WSO2 BAM, I was on finalizing the set of Events that is needed to
> monitored by BAM. Mainly as identified it is necessary to identify when a
> BPEL process get invoked and the number of times it got invoked. And also 
> it
> is necessary to identify how the partner services get invoked, in which
> occasions does they get invoked and also maybe the number of times each
> service get invoked. And also just like Milinda mentioned to me it is also
> necessary to identify when the process get complete and whether it is
> successfully responded to the client call.
>
> ApacheODE provides and interface called MessageExchangeInteceptor which
> contains four main methoda called ;
>
>1. onBpelServerInvoked()
>2. onProcessInvoked()
>3. onNewInstanceInvoked()
>4. onPartnerInvoked()
>
> A test event observer class has been written extending the
> MessageExchangeInteceptor interface and was able to run and identify what
> are the events that get triggered against a bpel process which contains
> several partner services. It was evide

Re: [Carbon-dev] Events that can be analysed by the MessageExchangeInterceptor of a BPEL process

2010-05-01 Thread Samisa Abeysinghe
Have you designed the event format for this? If so please send it over so
that we can have a look.

If it is not defined, I suggest that you design that to capture the data
discussed here.

Thanks,
Samisa...


On Fri, Apr 30, 2010 at 4:05 PM, Isuru Wimalasundera wrote:

> Hi
>
> yes that would be really useful because catching events on new instance
> creation can be really essential.
>
> Today had a discussion with Waruna and got information on some of the data
> that I tried to retrieve from events (as mentioned in my first message),and
> also discussed the necessity of some data according to the requirement of
> this project.
>
> After talking with Waruna and going through all the event data retrieved, I
> thought about some important events that would be really useful to be
> monitored by BAM. Mainly it is necessary to find whether it is possible to
> analyse events when the bpel process is being invoked by a request. As the
> method onProcessInvoked() is working it is possible to track when a process
> is invoked. It has to be notified whether the particular process invocation
> is successful or not. May be this can be done by reading the process state
> of the event, and it is still there to be tested. And there can be other
> data such as process Id and the process invoked time as additional info
> about the process invocation.
>
> Then it is necessary to catch events when a new instance of the bpel
> process is being created and invoked. I guess we have to check whether the
> new instance creation is successful  or failed. To catch these events, just
> like Milinda aiyya replied we have to make the onNewInstanceInvoked() method
> working.Then from the newly created process instance all the partner
> services will get invoked respectively and it is necessary to track events
> of these partner services. From within the onPartnerInvoked()  method we
> have to track important information like succesful partner service requests,
> fault requests and partner service ID s, partnet role names ,etc to
> recognize the external web services.
>
> Another important thing is to identify which partner service belongs to
> which process instance, Becasue at same time many request can come to the
> same process and create many instances and they all will trigger same web
> services. Once Samisa sir suggested to give an unique Actvity ID to the new
> instance and for all the related partner services to the process. It is
> essential to find a way to fulfill this requirement. Request suggestions.
>
> And finally it is necessary to identify whether the created new instance
> complete the process successfully or not. for that we have to identify
> whether the process successfully return a respond to a client. Now it is
> needed to clearly identify what are the properties that should be included
> in to these events that I mentioned above, and need to clarify these
> attributes against the need of BPS. Request suggestions on the Event plan.
>
> Thank You
> IsuruW
>
>
>
>
> On Fri, Apr 30, 2010 at 9:59 AM, Milinda Pathirage wrote:
>
>> Please find my comments inline.
>>
>> On Fri, Apr 30, 2010 at 8:57 AM, Waruna Ranasinghe wrote:
>>
>>>
>>>
>>> On Thu, Apr 29, 2010 at 6:30 PM, Isuru Wimalasundera wrote:
>>>
 Hi ,

 As I am working in the project Monitoring* *a BPEL process on WSO2 BPS
 by using WSO2 BAM, I was on finalizing the set of Events that is needed to
 monitored by BAM. Mainly as identified it is necessary to identify when a
 BPEL process get invoked and the number of times it got invoked. And also 
 it
 is necessary to identify how the partner services get invoked, in which
 occasions does they get invoked and also maybe the number of times each
 service get invoked. And also just like Milinda mentioned to me it is also
 necessary to identify when the process get complete and whether it is
 successfully responded to the client call.

 ApacheODE provides and interface called MessageExchangeInteceptor which
 contains four main methoda called ;

1. onBpelServerInvoked()
2. onProcessInvoked()
3. onNewInstanceInvoked()
4. onPartnerInvoked()

 A test event observer class has been written extending the
 MessageExchangeInteceptor interface and was able to run and identify what
 are the events that get triggered against a bpel process which contains
 several partner services. It was evident to me that the onProcessInvoked()
 method and onPartnerInvoked() methods are responding well and caught events
 whenever a bpel process got invoked and each time a partner service got
 invoked. But the onBpelServerInvoked() and onNewInstanceInvoked() methods
 were not working and I have informed it to the BPS team. But still the
 MessageExchangeInteceptor has been able to answer some of the event
 requiremnets. Today I was trying to retrieve more useful data from the
 events that get caught by

Re: [Carbon-dev] Events that can be analysed by the MessageExchangeInterceptor of a BPEL process

2010-04-30 Thread Isuru Wimalasundera
Hi

yes that would be really useful because catching events on new instance
creation can be really essential.

Today had a discussion with Waruna and got information on some of the data
that I tried to retrieve from events (as mentioned in my first message),and
also discussed the necessity of some data according to the requirement of
this project.

After talking with Waruna and going through all the event data retrieved, I
thought about some important events that would be really useful to be
monitored by BAM. Mainly it is necessary to find whether it is possible to
analyse events when the bpel process is being invoked by a request. As the
method onProcessInvoked() is working it is possible to track when a process
is invoked. It has to be notified whether the particular process invocation
is successful or not. May be this can be done by reading the process state
of the event, and it is still there to be tested. And there can be other
data such as process Id and the process invoked time as additional info
about the process invocation.

Then it is necessary to catch events when a new instance of the bpel process
is being created and invoked. I guess we have to check whether the new
instance creation is successful  or failed. To catch these events, just like
Milinda aiyya replied we have to make the onNewInstanceInvoked() method
working.Then from the newly created process instance all the partner
services will get invoked respectively and it is necessary to track events
of these partner services. From within the onPartnerInvoked()  method we
have to track important information like succesful partner service requests,
fault requests and partner service ID s, partnet role names ,etc to
recognize the external web services.

Another important thing is to identify which partner service belongs to
which process instance, Becasue at same time many request can come to the
same process and create many instances and they all will trigger same web
services. Once Samisa sir suggested to give an unique Actvity ID to the new
instance and for all the related partner services to the process. It is
essential to find a way to fulfill this requirement. Request suggestions.

And finally it is necessary to identify whether the created new instance
complete the process successfully or not. for that we have to identify
whether the process successfully return a respond to a client. Now it is
needed to clearly identify what are the properties that should be included
in to these events that I mentioned above, and need to clarify these
attributes against the need of BPS. Request suggestions on the Event plan.

Thank You
IsuruW



On Fri, Apr 30, 2010 at 9:59 AM, Milinda Pathirage  wrote:

> Please find my comments inline.
>
> On Fri, Apr 30, 2010 at 8:57 AM, Waruna Ranasinghe wrote:
>
>>
>>
>> On Thu, Apr 29, 2010 at 6:30 PM, Isuru Wimalasundera wrote:
>>
>>> Hi ,
>>>
>>> As I am working in the project Monitoring* *a BPEL process on WSO2 BPS
>>> by using WSO2 BAM, I was on finalizing the set of Events that is needed to
>>> monitored by BAM. Mainly as identified it is necessary to identify when a
>>> BPEL process get invoked and the number of times it got invoked. And also it
>>> is necessary to identify how the partner services get invoked, in which
>>> occasions does they get invoked and also maybe the number of times each
>>> service get invoked. And also just like Milinda mentioned to me it is also
>>> necessary to identify when the process get complete and whether it is
>>> successfully responded to the client call.
>>>
>>> ApacheODE provides and interface called MessageExchangeInteceptor which
>>> contains four main methoda called ;
>>>
>>>1. onBpelServerInvoked()
>>>2. onProcessInvoked()
>>>3. onNewInstanceInvoked()
>>>4. onPartnerInvoked()
>>>
>>> A test event observer class has been written extending the
>>> MessageExchangeInteceptor interface and was able to run and identify what
>>> are the events that get triggered against a bpel process which contains
>>> several partner services. It was evident to me that the onProcessInvoked()
>>> method and onPartnerInvoked() methods are responding well and caught events
>>> whenever a bpel process got invoked and each time a partner service got
>>> invoked. But the onBpelServerInvoked() and onNewInstanceInvoked() methods
>>> were not working and I have informed it to the BPS team. But still the
>>> MessageExchangeInteceptor has been able to answer some of the event
>>> requiremnets. Today I was trying to retrieve more useful data from the
>>> events that get caught by the  onProcessInvoked() method and the
>>> onPartnerInvoked() method, and found some very important data can be
>>> retrieved . But there were some data that couldn't get retrieved as they
>>> thrown Null pointer exceptions and couldn't continue running the bpel
>>> process.
>>>
>>
>> Yes, there are some issues with onBpelServerInvoked
>> and onNewInstanceInvoked methods, but I think, other two methods provi

Re: [Carbon-dev] Events that can be analysed by the MessageExchangeInterceptor of a BPEL process

2010-04-29 Thread Milinda Pathirage
Please find my comments inline.

On Fri, Apr 30, 2010 at 8:57 AM, Waruna Ranasinghe  wrote:

>
>
> On Thu, Apr 29, 2010 at 6:30 PM, Isuru Wimalasundera wrote:
>
>> Hi ,
>>
>> As I am working in the project Monitoring* *a BPEL process on WSO2 BPS by
>> using WSO2 BAM, I was on finalizing the set of Events that is needed to
>> monitored by BAM. Mainly as identified it is necessary to identify when a
>> BPEL process get invoked and the number of times it got invoked. And also it
>> is necessary to identify how the partner services get invoked, in which
>> occasions does they get invoked and also maybe the number of times each
>> service get invoked. And also just like Milinda mentioned to me it is also
>> necessary to identify when the process get complete and whether it is
>> successfully responded to the client call.
>>
>> ApacheODE provides and interface called MessageExchangeInteceptor which
>> contains four main methoda called ;
>>
>>1. onBpelServerInvoked()
>>2. onProcessInvoked()
>>3. onNewInstanceInvoked()
>>4. onPartnerInvoked()
>>
>> A test event observer class has been written extending the
>> MessageExchangeInteceptor interface and was able to run and identify what
>> are the events that get triggered against a bpel process which contains
>> several partner services. It was evident to me that the onProcessInvoked()
>> method and onPartnerInvoked() methods are responding well and caught events
>> whenever a bpel process got invoked and each time a partner service got
>> invoked. But the onBpelServerInvoked() and onNewInstanceInvoked() methods
>> were not working and I have informed it to the BPS team. But still the
>> MessageExchangeInteceptor has been able to answer some of the event
>> requiremnets. Today I was trying to retrieve more useful data from the
>> events that get caught by the  onProcessInvoked() method and the
>> onPartnerInvoked() method, and found some very important data can be
>> retrieved . But there were some data that couldn't get retrieved as they
>> thrown Null pointer exceptions and couldn't continue running the bpel
>> process.
>>
>
> Yes, there are some issues with onBpelServerInvoked
> and onNewInstanceInvoked methods, but I think, other two methods provide all
> the data that is required.
>

We can easily add onNewInstanceInvoked into BPEL engine, and we can
differentiate between instance creation requests and other requests to a
process using this method. We'll provide you a patch for BPS 1.1.1 for
testing purposes.


>
>>
>> both the onProcessInvoked() and onPartnerInvoked() methods take
>> MessageExchangeInterceptor.InterceptorEvent object as a parameter
>> (InteceptorEvent is another static interface within the
>> MessageExchangeInteceptor) and can retrieve data from this object under four
>> main methods which are
>>
>>1. org.apache.ode.bpel.dao.BpelDAOConnection getConnection()
>>2. org.apache.ode.bpel.dao.ProcessDAO getProcessDAO()
>>3. org.apache.ode.bpel.iapi.ProcessConf getProcessConf()
>>4. org.apache.ode.bpel.dao.MessageExchangeDAO()
>>
>> under the onProcessInvoked() method I have successfully been able to
>> retrieve data for method calls such as...
>>
>> System.out.println("onProcessInvoked: " +
>> ic.getProcessConf().getProcessId().toString());
>> ("Time: "+ic.getMessageExchangeDAO().getCreateTime().toString());
>> ("Type: "+ic.getProcessDAO().getType().toString());
>> ("Version: "+ic.getProcessDAO().getVersion());
>> ("Process ID: "+ic.getProcessDAO().getProcessId().toString());
>> ("Num of Instances: "+ic.getProcessDAO().getNumInstances());
>> ("processState : "+ic.getProcessConf().getState().toString());
>>
>> and found throwing Null Pointer Exceptions to data retrival such as 
>> //System.out.println("Callee:
>> "+ic.getMessageExchangeDAO().getCallee().toString());
>> ("Channel: "+ic.getMessageExchangeDAO().getChannel());
>> ("EPR: "+ic.getMessageExchangeDAO().getEPR().getBaseURI());
>> ("PartnerLinkModelID:
>> "+ic.getMessageExchangeDAO().getPartnerLinkModelId());
>> ("Request data:
>> "+ic.getMessageExchangeDAO().getRequest().getData().getNodeValue());
>> ("PartnerLink EPR:
>> "+ic.getMessageExchangeDAO().getPartnerLink().getMyEPR().getBaseURI());
>
>
> Lets look into these and figure out a solution
>
>
>>
>>
>> under the onPartnerInvoked() method it had been able to retrieve data from
>> method calls such as given below.
>> System.out.println("onPartnerInvoked: " +
>> ic.getProcessConf().getProcessId().toString());
>> ("Time: "+ic.getMessageExchangeDAO().getCreateTime().toString());
>> ("PartnerLinkModelID:
>> "+ic.getMessageExchangeDAO().getPartnerLinkModelId());
>> ("PartnerLink MySessionId:
>> "+ic.getMessageExchangeDAO().getPartnerLink().getMySessionId());
>>
>> and found throwing Null Pointer Exceptions to data retrival such as 
>> //System.out.println("Request data:
>> "+ic.getMessageExchangeDAO().getRequest().getData().getNodeValue());
>> ("PartnerLink EPR:
>> "+ic.getMessageExchangeDAO().getPartnerLin

Re: [Carbon-dev] Events that can be analysed by the MessageExchangeInterceptor of a BPEL process

2010-04-29 Thread Waruna Ranasinghe
On Thu, Apr 29, 2010 at 6:30 PM, Isuru Wimalasundera wrote:

> Hi ,
>
> As I am working in the project Monitoring* *a BPEL process on WSO2 BPS by
> using WSO2 BAM, I was on finalizing the set of Events that is needed to
> monitored by BAM. Mainly as identified it is necessary to identify when a
> BPEL process get invoked and the number of times it got invoked. And also it
> is necessary to identify how the partner services get invoked, in which
> occasions does they get invoked and also maybe the number of times each
> service get invoked. And also just like Milinda mentioned to me it is also
> necessary to identify when the process get complete and whether it is
> successfully responded to the client call.
>
> ApacheODE provides and interface called MessageExchangeInteceptor which
> contains four main methoda called ;
>
>1. onBpelServerInvoked()
>2. onProcessInvoked()
>3. onNewInstanceInvoked()
>4. onPartnerInvoked()
>
> A test event observer class has been written extending the
> MessageExchangeInteceptor interface and was able to run and identify what
> are the events that get triggered against a bpel process which contains
> several partner services. It was evident to me that the onProcessInvoked()
> method and onPartnerInvoked() methods are responding well and caught events
> whenever a bpel process got invoked and each time a partner service got
> invoked. But the onBpelServerInvoked() and onNewInstanceInvoked() methods
> were not working and I have informed it to the BPS team. But still the
> MessageExchangeInteceptor has been able to answer some of the event
> requiremnets. Today I was trying to retrieve more useful data from the
> events that get caught by the  onProcessInvoked() method and the
> onPartnerInvoked() method, and found some very important data can be
> retrieved . But there were some data that couldn't get retrieved as they
> thrown Null pointer exceptions and couldn't continue running the bpel
> process.
>

Yes, there are some issues with onBpelServerInvoked and onNewInstanceInvoked
methods, but I think, other two methods provide all the data that is
required.


>
> both the onProcessInvoked() and onPartnerInvoked() methods take
> MessageExchangeInterceptor.InterceptorEvent object as a parameter
> (InteceptorEvent is another static interface within the
> MessageExchangeInteceptor) and can retrieve data from this object under four
> main methods which are
>
>1. org.apache.ode.bpel.dao.BpelDAOConnection getConnection()
>2. org.apache.ode.bpel.dao.ProcessDAO getProcessDAO()
>3. org.apache.ode.bpel.iapi.ProcessConf getProcessConf()
>4. org.apache.ode.bpel.dao.MessageExchangeDAO()
>
> under the onProcessInvoked() method I have successfully been able to
> retrieve data for method calls such as...
>
> System.out.println("onProcessInvoked: " +
> ic.getProcessConf().getProcessId().toString());
> ("Time: "+ic.getMessageExchangeDAO().getCreateTime().toString());
> ("Type: "+ic.getProcessDAO().getType().toString());
> ("Version: "+ic.getProcessDAO().getVersion());
> ("Process ID: "+ic.getProcessDAO().getProcessId().toString());
> ("Num of Instances: "+ic.getProcessDAO().getNumInstances());
> ("processState : "+ic.getProcessConf().getState().toString());
>
> and found throwing Null Pointer Exceptions to data retrival such as 
> //System.out.println("Callee:
> "+ic.getMessageExchangeDAO().getCallee().toString());
> ("Channel: "+ic.getMessageExchangeDAO().getChannel());
> ("EPR: "+ic.getMessageExchangeDAO().getEPR().getBaseURI());
> ("PartnerLinkModelID:
> "+ic.getMessageExchangeDAO().getPartnerLinkModelId());
> ("Request data:
> "+ic.getMessageExchangeDAO().getRequest().getData().getNodeValue());
> ("PartnerLink EPR:
> "+ic.getMessageExchangeDAO().getPartnerLink().getMyEPR().getBaseURI());


Lets look into these and figure out a solution


>
>
> under the onPartnerInvoked() method it had been able to retrieve data from
> method calls such as given below.
> System.out.println("onPartnerInvoked: " +
> ic.getProcessConf().getProcessId().toString());
> ("Time: "+ic.getMessageExchangeDAO().getCreateTime().toString());
> ("PartnerLinkModelID:
> "+ic.getMessageExchangeDAO().getPartnerLinkModelId());
> ("PartnerLink MySessionId:
> "+ic.getMessageExchangeDAO().getPartnerLink().getMySessionId());
>
> and found throwing Null Pointer Exceptions to data retrival such as 
> //System.out.println("Request data:
> "+ic.getMessageExchangeDAO().getRequest().getData().getNodeValue());
> ("PartnerLink EPR:
> "+ic.getMessageExchangeDAO().getPartnerLink().getMyEPR().getBaseURI());
> ("PartnerLink RoleName:
> "+ic.getMessageExchangeDAO().getPartnerLink().getMyRoleName());


getMyRoleName is not available for all the partnerlinks.


Thanks,
Waruna


>
> ("PartnerLink RoleServiceName:
> "+ic.getMessageExchangeDAO().getPartnerLink().getMyRoleServiceName().toString());
> ("PartnerLink PartnerRoleName:
> "+ic.getMessageExchangeDAO().getPartnerLink().getPartnerRoleName()
>
> I found som

[Carbon-dev] Events that can be analysed by the MessageExchangeInterceptor of a BPEL process

2010-04-29 Thread Isuru Wimalasundera
Hi ,

As I am working in the project Monitoring* *a BPEL process on WSO2 BPS by
using WSO2 BAM, I was on finalizing the set of Events that is needed to
monitored by BAM. Mainly as identified it is necessary to identify when a
BPEL process get invoked and the number of times it got invoked. And also it
is necessary to identify how the partner services get invoked, in which
occasions does they get invoked and also maybe the number of times each
service get invoked. And also just like Milinda mentioned to me it is also
necessary to identify when the process get complete and whether it is
successfully responded to the client call.

ApacheODE provides and interface called MessageExchangeInteceptor which
contains four main methoda called ;

   1. onBpelServerInvoked()
   2. onProcessInvoked()
   3. onNewInstanceInvoked()
   4. onPartnerInvoked()

A test event observer class has been written extending the
MessageExchangeInteceptor interface and was able to run and identify what
are the events that get triggered against a bpel process which contains
several partner services. It was evident to me that the onProcessInvoked()
method and onPartnerInvoked() methods are responding well and caught events
whenever a bpel process got invoked and each time a partner service got
invoked. But the onBpelServerInvoked() and onNewInstanceInvoked() methods
were not working and I have informed it to the BPS team. But still the
MessageExchangeInteceptor has been able to answer some of the event
requiremnets. Today I was trying to retrieve more useful data from the
events that get caught by the  onProcessInvoked() method and the
onPartnerInvoked() method, and found some very important data can be
retrieved . But there were some data that couldn't get retrieved as they
thrown Null pointer exceptions and couldn't continue running the bpel
process.

both the onProcessInvoked() and onPartnerInvoked() methods take
MessageExchangeInterceptor.InterceptorEvent object as a parameter
(InteceptorEvent is another static interface within the
MessageExchangeInteceptor) and can retrieve data from this object under four
main methods which are

   1. org.apache.ode.bpel.dao.BpelDAOConnection getConnection()
   2. org.apache.ode.bpel.dao.ProcessDAO getProcessDAO()
   3. org.apache.ode.bpel.iapi.ProcessConf getProcessConf()
   4. org.apache.ode.bpel.dao.MessageExchangeDAO()

under the onProcessInvoked() method I have successfully been able to
retrieve data for method calls such as...

System.out.println("onProcessInvoked: " +
ic.getProcessConf().getProcessId().toString());
("Time: "+ic.getMessageExchangeDAO().getCreateTime().toString());
("Type: "+ic.getProcessDAO().getType().toString());
("Version: "+ic.getProcessDAO().getVersion());
("Process ID: "+ic.getProcessDAO().getProcessId().toString());
("Num of Instances: "+ic.getProcessDAO().getNumInstances());
("processState : "+ic.getProcessConf().getState().toString());

and found throwing Null Pointer Exceptions to data retrival such as 
//System.out.println("Callee:
"+ic.getMessageExchangeDAO().getCallee().toString());
("Channel: "+ic.getMessageExchangeDAO().getChannel());
("EPR: "+ic.getMessageExchangeDAO().getEPR().getBaseURI());
("PartnerLinkModelID: "+ic.getMessageExchangeDAO().getPartnerLinkModelId());
("Request data:
"+ic.getMessageExchangeDAO().getRequest().getData().getNodeValue());
("PartnerLink EPR:
"+ic.getMessageExchangeDAO().getPartnerLink().getMyEPR().getBaseURI());

under the onPartnerInvoked() method it had been able to retrieve data from
method calls such as given below.
System.out.println("onPartnerInvoked: " +
ic.getProcessConf().getProcessId().toString());
("Time: "+ic.getMessageExchangeDAO().getCreateTime().toString());
("PartnerLinkModelID: "+ic.getMessageExchangeDAO().getPartnerLinkModelId());
("PartnerLink MySessionId:
"+ic.getMessageExchangeDAO().getPartnerLink().getMySessionId());

and found throwing Null Pointer Exceptions to data retrival such as 
//System.out.println("Request data:
"+ic.getMessageExchangeDAO().getRequest().getData().getNodeValue());
("PartnerLink EPR:
"+ic.getMessageExchangeDAO().getPartnerLink().getMyEPR().getBaseURI());
("PartnerLink RoleName:
"+ic.getMessageExchangeDAO().getPartnerLink().getMyRoleName());
("PartnerLink RoleServiceName:
"+ic.getMessageExchangeDAO().getPartnerLink().getMyRoleServiceName().toString());
("PartnerLink PartnerRoleName:
"+ic.getMessageExchangeDAO().getPartnerLink().getPartnerRoleName()

I found some of these failed data can be really useful when monitoring a
bpel process and I would like the bps team to take a look on this and find
if there is a way whether I can retrieve these data, and please give your
kind consideration on checking the necessity of these data for the projects.
And also I believe that there can be more important other data that may be
we can generate with in these methods to monitor a bpel process in an
interactive way. Request suggestions.

Thank You
IsuruW
__