Home » Eclipse Projects » Eclipse Communications Framework (ECF) » Other OSGi contained and HelloWorld
|Re: Other OSGi contained and HelloWorld [message #623583 is a reply to message #623581]
||Mon, 19 May 2008 17:41
| Scott Lewis
Registered: July 2009
Mark Proctor wrote:
> Is it possible to use the core runtime (non gui) ECF stuff on other OSGi
> containers, such as felix?
For obvious reasons, we've been doing all our development and testing on
Having said that, however, as a project we have tried to be very careful
to only use a few of the Equinox-only things (see below), with minimal
EE requirements (i.e. we've tried to keep as much as possible of the
core ECF code at CDC 1.0/Foundation 1.0 and CDC 1.1/Foundation 1.1 as
possible) and minimal dependencies on other bundles and/or services.
It's my understanding that the Equinox implementation of these non-OSGi
pieces are completely portable to other OSGi implementations, but
frankly I don't know if someone has done such ports to other impls.
Dependencies that ECF has on non-strict OSGi:
1) Equinox common (org.eclipse.equinox.common). This includes a number
of general utility interfaces classes...e.g. IStatus/Status,
exceptions,IAdaptable,IAdapterManager, as well as re-export of
2) OSGi util (org.eclipse.osgi.util). This includes the NLS utility
(the one we mostly use), and some others.
3) Equinox Jobs API (org.eclipse.core.runtime.jobs). This is a asynch
4) Extension registry (org.eclipse.equinox.registry). This is the
equinox extension registry.
My understanding is that it should/is possible to have all four of these
Equinox pieces run on other OSGi impls, and in that case ECF should then
run just fine...for core, remote services, discovery (requires CDC 1.1),
r-OSGi, and others. The ECF *.ui plugins have more requirements, of
course, (e.g. jface, org.eclipse.ui, forms API, etc., etc) and some of
the providers have more requirements as well (e.g. JRE 1.5), but to my
knowledge, the 4 requirements above satisfy the APIs listed here:
I'm looking at standardising a Drools agent
> on ECF, but don't want to be tied to only using the equinox OSGi impl.
> If not at the moment, maybe in the future?
Yes. As discussed above, it is more a matter of these four equinox
dependencies WRT other OSGi impls, rather than on the OSGi impl in
equinox itself. That is, the only deps in ECF are on pieces of Equinox
that should/do/can/may already run on other OSGi impls.
I think ECF could be an
> important project for agent based computing, but many people will want
> it to be usable on other OSGi impl.
Yes. I would be happy to support/assist efforts to run ECF on other
> Also any chance of a Hello World example using an r-osgi provider? Would
> be nice if this was step by step for noobies, including about creating
> and running and testing the example.
There's a hello-world-like example described here:
It doesn't currently use the r-OSGi provider, although the changes to
have it do so should be very minor...and we just haven't gotten to them
in the rush to 2.0.0/Ganymede (next month).
Also, there is test code that uses r_osgi provider here:
http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.ecf/tes ts/org.eclipse.ecf.tests.remoteservice/src/org/eclipse/ecf/t ests/remoteservice/r_osgi/?root=Technology_Project
It's not ideal, but it is what we have at the moment.
I/we will try to introduce more examples soon, but because of code
freeze with approaching release we can't add substantively to the code
going out in ECF 2.0.0. But there is more coming. Contributions of
such examples and docs are also most welcome from the community.
|Re: Other OSGi contained and HelloWorld [message #623590 is a reply to message #623589]
||Tue, 20 May 2008 19:16
| Scott Lewis
Registered: July 2009
Hi Markus and Mark,|
Markus Kuppe wrote:
> Mark Proctor wrote:
>> Is it possible to use the core runtime (non gui) ECF stuff on other
>> OSGi containers, such as felix? I'm looking at standardising a Drools
>> agent on ECF, but don't want to be tied to only using the equinox OSGi
>> impl. If not at the moment, maybe in the future? I think ECF could be
>> an important project for agent based computing, but many people will
>> want it to be usable on other OSGi impl.
> Hi Mark,
> are you willing to run our test suite on other OSGi containers and
> report the outcome? At best our test suite would always run with several
> containers to ensure compatibility.
Hmmm. This is an interesting idea.
> And just a thought, reasonable policy for the newly created RT top level
> project, that projects have to ensure compatibility with all containers?
It would be an excellent idea to suggest this. AFAIK, the runtime
project dev list and newsgroup are not yet provisioned, but as soon as
they are it would be a very good discussion to have.
BTW, for those that don't know, ECF will be moving from the Technology
top-level category to the new Runtime top-level category...and so input
from our committers, contributors, and community to the runtime project
PMC in this regard is more than just relevant since our community will
be part of the RT project's community soon.
For many projects (even Equinox) this will not be an easy requirement to
satisfy, as there are questions of which EE/JRE to support, which OSGi
standard version, and of course usage/dependencies on elements of
Equinox that don't come with the other containers (even if they can
actually be run on the other OSGi containers).
I would say that much/most of ECF is actually in a relatively good
position here (as compared with other projects in rt), as our
dependencies are relatively low.
But just to make the point again: please communicate such desires to
the new Runtime project as it becomes fully active, since ECF will soon
be in that project.
Current Time: Sun Jan 25 18:37:56 GMT 2015
Powered by FUDForum
. Page generated in 0.04596 seconds