[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ecf-dev] How to consume HelloWorld remote OSGI Samples in eclipse platform

Hi Pradeep,

On 4/22/2011 11:58 PM, Pradeep Fernando wrote:
Hi Scott,
<stuff deleted>
So...Pradeep or Harshana and/or others...would you please describe the
conditions (in terms of the framework, the way the framework is started,
what bundle state things are in, etc), that lead to being able to reproduce
the bundle state exception that Pradeep reported?  It would be much
appreciated...and hopefully by doing this we can completely avoid this issue
in the future.
In the case of hello world example that make use of activators/service
trackers instead of declarative services, I got that bundle state
exception issue., when i did "start
org.eclipse.ecf.remoteservices.hello.consumer.edef".

According to Markus's response then I tried to start the interface
bundle "hello.bundle". But it didnt work. Then with the help from this
forum discussion, [1] I figured out that we should get other bundles
in to "Active state" prior starting the
org.eclipse.ecf.remoteservices.hello.consumer.edef bundle.

In the second run, I made sure other bundles were in Active state
before starting the
org.eclipse.ecf.remoteservices.hello.consumer.edef bundle.  bundle.
However since OSGI runtime remembers the last state of bundles, in the
second run, rest of bundles including interface bundle were in Active
state AFA I can remember.

Thanks for describing what you did.

I assume that you are using Eclipse/Equinox 3.6.X...as I don't see this with Equinox 3.7.

I now believe that this boils down to some issue with Equinox 3.6.X classloading...having to do with the way the classloading is handled with ServiceFactories (which ECF RSA uses for proxy creation). I suspect that it relates to this classloading issue discussed on osgi-dev [1].

In any event, a reasonable work around is to have the product config autostart the org.eclipse.ecf.examples.remoteservices.hello bundle. I've opened a bug to do this [2], and made the change to the product configuration (i.e. /org.eclipse.ecf.examples.remoteservices.hello.consumer/products/Hello Service Consumer (edef,generic).product ). This should fix things on Equinox 3.6.x...as the new product config, when run will autostart the o.e.e.e.remoteservices.hello bundle, prior to triggering the edef discovery.

Pradeep and/or others...I would appreciate some testing of the new product config on 3.6.X Equinox...to verify that it does what's necessary for things to operate seemlessly on 3.6.X. If you can, please test on 3.6.2 and report results on the bug [2]. Thanksinadvance for your contribution.

Scott


[1] https://mail.osgi.org/pipermail/osgi-dev/2011-February/002972.html [2] https://bugs.eclipse.org/bugs/show_bug.cgi?id=343689


Framework : Equinox
Target environment : Helios + ECF remote services target components.
run using given .product files.


Please let me know if i can give even a small help in this regard. Happy to contribute.


[1] http://www.eclipse.org/forums/index.php?t=msg&th=206799&start=0&S=9a4e7e9fafd34c692ad75ebe5bc6a964

--Pradeep.




Thanks,

Scott

[1]
http://wiki.eclipse.org/EIG:Getting_Started_with_OSGi_Remote_Services#Running_the_Example_Hello_Service_Host
(I would suggest putting in a new page with a link on the above page...to
give detailed information about bundle autostart/start levels, use of Felix,
etc).





Thanks and Regards,
Harshana
Thanks,

Scott


_______________________________________________ ecf-dev mailing list ecf-dev@xxxxxxxxxxx https://dev.eclipse.org/mailman/listinfo/ecf-dev
Is this something specific to Felix?
_______________________________________________
ecf-dev mailing list
ecf-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ecf-dev