It seems that rsa try to discover an rs in the bad container, I mean it looks in the local container intead of remote, even if
it knows the rs containr id:
_________________________
!MESSAGE org.eclipse.core.runtime.Status[plugin=org.eclipse.ecf.osgi.services.remoteserviceadmin;code=4;message=org.eclipse.ecf.osgi.services.remoteserviceadmin.RemoteServiceAdmin:importService:selectRemoteServiceReference returned null for rsRefs=[],targetID=JGroupsID[jgroups:///sampleChannel?stackName=udp;null],idFilter=[Lorg.eclipse.ecf.core.identity.ID;@167e3a5,interfaces=[org.eclipse.ecf.examples.remoteservices.hello.IHello],rsFilter=null,rsContainerID=JGroupsID[jgroups:///QFvIUUIGCT+sOjHBYkkbC0vTgTY=;192.168.0.10:50453];severity4;exception=org.eclipse.ecf.core.ContainerConnectException: connect timeout;children=[]]
It seems that rsa try to doscover a rs in the bas container, I mean it looks in the local container intead of remote, even if
it knows the ss containr id:
______________
!MESSAGE org.eclipse.core.runtime.Status[plugin=org.eclipse.ecf.osgi.services.remoteserviceadmin;code=4;message=org.eclipse.ecf.osgi.services.remoteserviceadmin.RemoteServiceAdmin:importService:selectRemoteServiceReference returned null for rsRefs=[],targetID=JGroupsID[jgroups:///sampleChannel?stackName=udp;null],idFilter=[Lorg.eclipse.ecf.core.identity.ID;@167e3a5,interfaces=[org.eclipse.ecf.examples.remoteservices.hello.IHello],rsFilter=null,rsContainerID=JGroupsID[jgroups:///QFvIUUIGCT+sOjHBYkkbC0vTgTY=;192.168.0.10:50453];severity4;exception=org.eclipse.ecf.core.ContainerConnectException: connect timeout;children=[]]
________________________________________
That uplined jgroups id is the client's one id, so there is a timeout !
For older versions of Equinox, the framework uuid wasn't/isn't set
by the framework itself, so it can be necessary to create a uuid and
*set* the system property...there's code to do this here [1]...in
the getFrameworkUUID() method (this is used within the ECF impl of
RSA for older versions of Equinox).
I ask that , because I would like to put this static in
generic-hello.xml edef static bundle.
I have realized from your precedent post , that I should know
that in advance and then set this property in the host ?
You can't/shouldn't set the framework uuid...unless it's not already
set. According to recent OSGi spec, the framework uuid should be
set by the framework itself (and the code pointed to above is only
for older versions of frameworks...that didn't set the uuid system
property).
Note if you wish you can set some other service property and use
that to filter on in the edef, but in general you shouldn't be
modifying the framework uuid.
Great, Scott! (uhm, that's sound like the "Great Scott"
american
famous exclamation... ;)
I was waiting for this improvement in the wiki to
continue
investigating ECF usages. Maybe I would suggest code
examples to bind
to specific services or similar.
Have you examined the 'hello' examples? These support the
usage of multiple/alternative discovery and distribution
providers (e.g. zeroconf, zookeeper, slp, dnssd for
discovery...r-osgi, ecf generic, jms, xmpp, rest, etc for
distribution).
I'm not sure what you mean by 'bind specific services or
similar'.
I'm still a bit confused about the
difference of a server/host URL and the
containerFactoryArgs property,
ECF provider instances are created via a container
factory...and each provider can optionally define an
arbitrary array of arguments that is uses to
initialize/configure the container instance upon creation.
The containerFactoryArgs property can be used to pass
arbitrary arguments to the container factory...via the
service properties passed to the service registration call.
The ECF generic provider takes a single argument that allows
one to specify the server/host URI for that provider...with
default of:
ecftcp://localhost:3282/server
Note that this is for the generic provider only...and other
providers take other arguments (or take no arguments at
all). Each provider has it's own configuration
requirements (and it's own expected/required set of
containerFactoryArgs).
Note that if greater control over the container creation and
selection process is desired, that one can simply register
one's own implementation of the IHostContainerSelector [1]
as a service, and then when the ECF RSA impl exportService
call is made then the customized host container selector
will be called to select (and optionally create/configure)
the container(s) to actually export the service. The
default implementation of IHostContainerSelector (class
HostContainerSelector[2]) is where the host/server container
is actually created...and where the containerFactoryArgs are
actually used/passed into the container creation.
My intention is to add to the RSA documentation to describe
(with perhaps an example if I can manage the time) of
creating/using a custom IHostContainerSelector (and
IConsumerContainerSelector)...to show how this can easily be
done...and allow the container creation, configuration to be
customized as desired.
and how a client makes the discovery of services in an
specific
computer. For example, code about list all the remote
services in a
different machines than localhost could be interesting
(without using
zeroconf, I mean).
This is as easy as adding an EndpointListener...with a scope
that restricts the notification to the set of hosts that
match...e.g. to frameworks that do *not* have the same
framework uuid as localhost...e.g.
I would like to have other/more examples of doing this
(creating EndpointListeners with various kinds of scopes),
and I've been contemplating an Eclipse view that shows all
discovered EndpointDescriptions (with ability to easily set
scope). This would be easy to do...but alas no time.
I appreciate all the work of the ECF developers are
doing, given that
they do in their spare time :)
Yes...see 'alas no time' comment above :). If you can find
non-spare time support, please consider making it
known/available.
When replying, please edit your Subject line so it
is more specific
than "Re: Contents of ecf-dev digest..."
Today's Topics:
1. Getting started with ECF (ronen hamias)
2. Re: Getting started with ECF (Pierre Henry
Perret)
3. Re: Getting started with ECF (Scott Lewis)
4. adding to RemoteServiceAdmin wiki docs (Scott
Lewis)
5. Re: Getting started with ECF (ronen hamias)
6. Re: Getting started with ECF (Markus Alexander
Kuppe)
i am having trouble to get started with ecf in terms
of setting my
development envitoment correctly
iso far i had alot of problems and exceptions thrown
when starting the
platform
my guess i am missing dependencies or i didnt
downlod the correct versions
for:
eclipse
OSGi
ECF
my goal is to be able to learn ECF capabilities and
in the future even
contribute to the project
what is the correct profile/pre requisits for
testing ECF?
what is the correct profile/pre requisits for
developing ECF?
is there any step by step guide somewhere?
i am only getting started so please bare with me...
Message: 2
Date: Thu, 31 Mar 2011 20:42:24 +0200
From: Pierre Henry Perret<phperret@xxxxxxxxx>
To: "Eclipse Communication Framework (ECF) developer
mailing list."
<ecf-dev@xxxxxxxxxxx>
Subject: Re: [ecf-dev] Getting started with ECF
Message-ID:
<AANLkTimtoq56bg71Yzt=+bjKLufbu6Y1yOyZvfH5BgSv@xxxxxxxxxxxxxx>
Content-Type: text/plain; charset="iso-8859-1"
Hi Ronen,
We have documentation for starter contributor/user
on installing the ECF sdk
at [0].
Also, I think you 'll need this at [1] also, which
docs how to start rs use
with ECF implementation.
With that doc and... some resilience you'll get it!
i am having trouble to get started with ecf in
terms of setting my
development envitoment correctly
iso far i had alot of problems and exceptions
thrown when starting the
platform
my guess i am missing dependencies or i didnt
downlod the correct versions
for:
eclipse
OSGi
ECF
my goal is to be able to learn ECF capabilities
and in the future even
contribute to the project
what is the correct profile/pre requisits for
testing ECF?
what is the correct profile/pre requisits for
developing ECF?
is there any step by step guide somewhere?
i am only getting started so please bare with
me...
Hi all,
i am having trouble to get started with ecf in
terms of setting my
development envitoment correctly
iso far i had alot of problems and exceptions
thrown when starting the
platform
my guess i am missing dependencies or i didnt
downlod the correct
versions for:
eclipse
OSGi
ECF
my goal is to be able to learn ECF capabilities
and in the future even
contribute to the project
what is the correct profile/pre requisits for
testing ECF?
The ECF download page [1] indicates that ECF 3.5
requires Eclipse Helios
SDK (3.6.X) or Eclipse Indigo SDK (3.7.X). You
can get Eclipse Helios
or Eclipse Indigo here [2].
what is the correct profile/pre requisits for
developing ECF?
Same as above...i.e. Eclipse Helios or Eclipse
Indigo....the SDK of
whatever version is best...because it includes most
of the relevant
tooling, plus the Eclipse/Equinox source code (which
can be useful).
In addition, since ECF now uses git for our
repository [5], it's
necessary to use *some* git client...to retrieve and
possibly change/add
to the latest ECF source. The eGit client is
popular (because it runs
in Eclipse) [6], but since it is not included in the
Eclipse SDK you
need to install it into Eclipse SDK yourself. See
[6] for the
instructions for installing/using eGit.
You can also use other git clients if you wish (e.g.
git command line
clients, etc)...but of course if you do so you have
to keep your local
Eclipse workspace in sync with the local repo
manually.
is there any step by step guide somewhere?
No...not one that includes installing Eclipse, eGit,
etc. If you want
to produce one...once you've identified the steps
that will help
you...that would be a great contribution to ECF
(i.e. by creating/adding
a page to the ECF wiki [3]).
However....we do now have several pages describing
the
download/install/examples app usage for ECF's impl
of OSGi remote
services (which is one part of ECF...not all of it,
but one significant
part). Those docs are here [4] (as indicated by
Pierre's recent email
also).
As of ECF 3.5, much of ECF can/could run on Felix
(another OSGi
framework impl), rather than only Equinox (which is
an the OSGi
framework impl that comes *with* Eclipse).
Actually, I believe ECF
remote services development can/could probably be
done by other
IDEs/tooling (e.g. Idea...and/or Netbeans), but I
haven't even tried
this yet, so I can't explain the process for doing
so.
Message: 4
Date: Thu, 31 Mar 2011 16:35:51 -0700
From: Scott Lewis<slewis@xxxxxxxxxxxxx>
To: "Eclipse Communication Framework (ECF) developer
mailing list."
<ecf-dev@xxxxxxxxxxx>
Subject: [ecf-dev] adding to RemoteServiceAdmin wiki
docs
Message-ID:<4D950FD7.5050300@xxxxxxxxxxxxx>
Content-Type: text/plain; charset=ISO-8859-1;
format=flowed
Hi Folks,
I've been adding to the wiki-based docs for the ECF
impl of the OSGi
Remote Service Admin (RSA) here [1]. The idea is to
allow people to use
the major features of the ECF RSA impl without
having to consult with
the OSGI specification (chap 122 of enterprise
spec)...at least for
everything :).
It's not completed yet, but I would appreciate some
review, as well as
comments or suggestions...or further contributions,
examples, etc.
Hi all,
i am having trouble to get started with ecf in
terms of setting my
development envitoment correctly
iso far i had alot of problems and exceptions
thrown when starting the
platform
my guess i am missing dependencies or i didnt
downlod the correct versions
for:
eclipse
OSGi
ECF
my goal is to be able to learn ECF capabilities
and in the future even
contribute to the project
what is the correct profile/pre requisits for
testing ECF?
The ECF download page [1] indicates that ECF 3.5
requires Eclipse Helios
SDK (3.6.X) or Eclipse Indigo SDK (3.7.X). You
can get Eclipse Helios or
Eclipse Indigo here [2].
what is the correct profile/pre requisits for
developing ECF?
Same as above...i.e. Eclipse Helios or Eclipse
Indigo....the SDK of
whatever version is best...because it includes
most of the relevant tooling,
plus the Eclipse/Equinox source code (which can be
useful).
In addition, since ECF now uses git for our
repository [5], it's necessary
to use *some* git client...to retrieve and
possibly change/add to the latest
ECF source. The eGit client is popular (because
it runs in Eclipse) [6],
but since it is not included in the Eclipse SDK
you need to install it into
Eclipse SDK yourself. See [6] for the
instructions for installing/using
eGit.
You can also use other git clients if you wish
(e.g. git command line
clients, etc)...but of course if you do so you
have to keep your local
Eclipse workspace in sync with the local repo
manually.
is there any step by step guide somewhere?
No...not one that includes installing Eclipse,
eGit, etc. If you want to
produce one...once you've identified the steps
that will help you...that
would be a great contribution to ECF (i.e. by
creating/adding a page to the
ECF wiki [3]).
However....we do now have several pages describing
the
download/install/examples app usage for ECF's impl
of OSGi remote services
(which is one part of ECF...not all of it, but one
significant part). Those
docs are here [4] (as indicated by Pierre's recent
email also).
As of ECF 3.5, much of ECF can/could run on Felix
(another OSGi framework
impl), rather than only Equinox (which is an the
OSGi framework impl that
comes *with* Eclipse). Actually, I believe ECF
remote services development
can/could probably be done by other IDEs/tooling
(e.g. Idea...and/or
Netbeans), but I haven't even tried this yet, so I
can't explain the process
for doing so.