OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

wsrp message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Subject: Re: [wsrp][interfaces]: Actions vs. Events


Carsten,
    Thanks for this write-up.  I better understand the differences between actions and
events.  What I don't understand is why action handling is absolutely essential.
Web/servlet programmers have gotten along fine without this abstraction for a long time
now.  And I don't see anything (yet) in how you have defined actions that provide
benefit over and above handling the action as part of a render/getmarkup.  And given
our performance concerns I imagine actions will either be defined to return markup --
i.e. they are another form of getmarkup/render.  Or "actions" will be modeled in the
producer as part of a producer side portlet container -- i.e. the portal makes a render
call but the producer side portlet container breaks this into an action call followed
by a render call.  This would seem to lessen the desirability of the abstraction.  Can
you motivate "actions" more?
     -Mike-

Carsten Leue wrote:

> Hi - as promised in the interface call here is a definition of what I would
> define as "actions" and "events". We might use this as a starting point for
> the further discussion.
>
> Both actions and events are notifications for a WSRP service.
>
> 1. Action:
> Actions are notifications that are triggered by the user. During the
> creation of markup the service encodes special URLs in the markup and
> associates data to them.
> The aggregator may need to rewrite the URLs to make them appear as links
> and redirect them to the aggregator. The end user can click on the links to
> trigger such an action. The aggregator then intercepts this and issues a
> call to the action handler defined in the WSRP interface together with the
> data the service encoded in the markup. As a reaction to this action the
> service may modify its state an regenerate its markup.
> The following points are important in this scenario:
> - the set of possible actions is defined by the server by embedding them in
> the markup
> - the end user triggers the actions
> - there is only one consumer of an action: the service that embedded the
> action into the markup
>
> 2. Event:
> Events are launched programatically by components (the aggregator or one of
> the services). Events are not directly represented in the markup but issued
> by the components depending on their state (could be a timer, a system
> event or as a reaction to an action). Events can either be broadcast to all
> services or to a set of registered services.
> The following points are important in this scenario:
> - the set of receivers of events (listeners) is dynamic
> - if a service fires an event it needs to connect to the listeners. This
> might not always be possible due to firewall restrictions
> - i becomes possible to halt the system by (accidentally) introducing
> cycles in the event propagation
>
> Following this definition event handling is much more complex and error
> prone than action handling and the two serve different purposes: user
> interaction and notification.
>
> 3. Relationship to WSRP
> From my point of view we should clearly distinguish between action handling
> and event handling in WSRP. Event handling easily becomes very complex and
> is not always required to support portal/portlet interaction. Maybe we
> should separate event handling out into an optional interface. My
> proposition would be to reuse the WSIA event handling interfaces for this
> but leave it up to the service to support this feature.
> Action handling however is abosultely essential for user interaction. For
> this reason it makes sense for me to include this functionality into the
> base WSRP interface.
>
> I added a PDF document to further clarify the distinction graphically.
>
> (See attached file: Action vs Event.zip)
>
> Best regards
> Carsten Leue
>
> -------
> Dr. Carsten Leue
> Dept.8288, IBM Laboratory Böblingen , Germany
> Tel.: +49-7031-16-4603, Fax: +49-7031-16-4401
>
>   ------------------------------------------------------------------------
>                                  Name: Action vs Event.zip
>    Action vs Event.zip           Type: Winzip32 File (application/x-zip-compressed)
>                              Encoding: BASE64
>                       Download Status: Not downloaded with message



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Powered by eList eXpress LLC