Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Eclipse Communications Framework (ECF) » Other OSGi contained and HelloWorld
Other OSGi contained and HelloWorld [message #623581] Mon, 19 May 2008 16:58 Go to next message
Mark Proctor is currently offline Mark Proctor
Messages: 18
Registered: July 2009
Junior Member
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.

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.

Thanks

Mark
http://labs.jboss.org/drools
http://blog.athico.com/
Re: Other OSGi contained and HelloWorld [message #623583 is a reply to message #623581] Mon, 19 May 2008 17:41 Go to previous messageGo to next message
Scott Lewis is currently offline Scott Lewis
Messages: 971
Registered: July 2009
Senior Member
Hi Mark,

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
Equinox.

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
org.osgi.framework,etc.

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
job/threading API.

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:

http://wiki.eclipse.org/ECF_API_Docs


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
OSGi impls.


>
> 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:
http://wiki.eclipse.org/Discovery_of_Remote_Services

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.

Scott
Re: Other OSGi contained and HelloWorld [message #623589 is a reply to message #623581] Tue, 20 May 2008 18:41 Go to previous messageGo to next message
Eclipse User
Originally posted by: eclipse-news.lemmster.de

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.

And just a thought, reasonable policy for the newly created RT top level
project, that projects have to ensure compatibility with all containers?

Cheers
Markus
Re: Other OSGi contained and HelloWorld [message #623590 is a reply to message #623589] Tue, 20 May 2008 19:16 Go to previous message
Scott Lewis is currently offline Scott Lewis
Messages: 971
Registered: July 2009
Senior Member
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.

Scott
Previous Topic:JmDNS discovery issue
Next Topic:ECF conference call notes for 5/22/2008
Goto Forum:
  


Current Time: Fri Oct 24 15:42:03 GMT 2014

Powered by FUDForum. Page generated in 0.02157 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software