Hi Peter,

Thanks - it's unfortunately as I expected then (i.e. no built-in support
in any widely-used OSGi framework). 

I do agree with you that this is not a function of the EventAdmin
service. It should instead be an independent service, and one that is
used by the frameworks that publish / wire together components
(Blueprint / iPOJO).

We also write quite a bit of Jini code, and there we have the
EventMailbox (Mercury) service that performs a similar function (though
Jini events are not as nice and loosely-coupled as OSGi events).

I think there is good scope for a similar service in OSGi, whose job is
to maintain persistent event subscriptions for components that disappear
or malfunction from time to time.

Any chance anybody here is working on such a project, or should I
start? :-)

kind regards,
Dawid



On Fri, 2012-09-07 at 09:32 +0200, Peter Kriens wrote:
> The only way to solve this is to persistently store events, something which I 
> think Event Admin is too light weight for. There are too many events that are 
> just informational, storing them would be overkill. A light weight solution 
> to this problem is supported by different libraries, the one I liked is 
> Hazelcast (which also gives you cluster facilities).
> 
> Kind regards,
> 
>       Peter Kriens
> 
> On 6 sep. 2012, at 13:01, Dawid Loubser wrote:
> 
> > Hi All,
> > 
> > We make heavy use of OSGi (running in JBoss 7, actually) for a large
> > integration application, and this includes events (EventAdmin). We don't
> > currently use iPOJO (simply declarative service) but I really want to
> > move over to iPOJO.
> > 
> > My principal problem with OSGi events is the lack of a durable
> > subscription mechanism (such as what JMS provides), which means that
> > when I re-deploy an event handler component (that has been bug-fixed,
> > for example), it may miss events that occur at the moment of
> > redeployment. This means that one cannot rely on events for critical
> > workflow steps.
> > 
> > Does iPOJO provide any mechanism to improve event reliability? The only
> > two features I would imagine that are needed are:
> > 
> > * If a handler fails when handling an event (throws a RuntimeException),
> > event delivery should be repeated (perhaps for a certain time).
> > 
> > * When a component is being re-deployed (and one could argue, when it is
> > stopped as well) the event should be held for a certain time, and
> > delivered once the component is up again.
> > 
> > Temporal service dependencies provide this sort of thing quite nicely
> > for normal service invocation, but is there any way to use a similar
> > mechanism for event subscriptions to decrease the likelihood of missing
> > events?
> > 
> > If not, since iPOJO already has a layer that takes care of event
> > subscription and publication, it already provides a solid hook to build
> > in this functionality I imagine.
> > 
> > Any information would be much appreciated -
> > 
> > Dawid
> > 
> > 
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [email protected]
> > For additional commands, e-mail: [email protected]
> > 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to