On Mon, Jun 15, 2009 at 10:13 AM, Todor Boev <t.b...@prosyst.bg> wrote:

> Dmitry Skavish wrote:
>
>> Hello all,
>> I am trying to understand the differences between those technologies, but
>> I
>> could not find any article which compares all them side by side.
>> Can somebody summarize pros and cons or point me to page where this is
>> already done?
>>
>> We are using Guice, so I guess the logical way is to use peaberry, but I
>> don't want to make a decision without knowing all the differences.
>>
>> I guess I am somewhat confused about iPOJO and DS because they look to me
>> strikingly similar. What is the main difference between them?
>>
>> Thanks a lot!
>>
>>
> Here's a descent comparison between Spring DM, OSGi DS and iPojo.
>
>
> http://www.slideshare.net/heiko.seeberger/jax-09-osgi-service-components-models
>
> Generally speaking iPojo seems to be OSGi DS but done right...and than
> evolved to an ever more different pluggable animal :) If I had to choose I
> would pick iPojo over OSGi DS.


Unfortunately we can't do bytecode manipulations, so iPOJO is out of the
question. And I am not really happy with all this iPOJO magic with private
fields.

I can't find comparisons between Peaberry and the rest so I'll try to make a
> brief one here:
>
> Peaberry is a transparent integration between a random dynamic service
> registry and Guice. So just like Guice it has no explicit component model,
> component lifecycle, component configuration. You have the usual Guice
> free-form, constructor oriented DI plus @Named injection points for static
> configuration. The two things I find I am missing in Peaberry are special
> support for dynamic configuration (e.g. the OSGi ConfigurationAdmin service)
> and automatic activation/deactivation of my bundles. Of these the
> activation/deactivation issue seems the easier one to solve: you code a
> BundleActivator that follows a standard pattern. In fact I am working right
> now on a small extender that will capture the pattern once and for all.
> Doing dynamic configuration by hand requires a bit more work (e.g. must
> synchronize properly). You can check my thoughts on the problems here:
>
> http://code.google.com/p/peaberry/wiki/ConfigRegistry
>
> I guess in the end it comes down to the style of DI you want to use. If you
> want a more free-form, constructor injection - go with Guice. If you want a
> component-oriented approach go with iPojo or Spring DM. I would not go with
> OSGi DS since it does not really do much to shield you from the service
> dynamics.


So by "it does not really do much to shield you from the service dynamics"
you meant I have to do all those synchronizations (in DS) everywhere or
something else?

-- 
Dmitry Skavish

Reply via email to