[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [ecf-dev] Remote service problems after update to 3.5
|
Eugene,
On 6/6/2011 6:18 AM, Eugen Reiswich wrote:
Hi folks,
I just updated ECF to version 3.5 and got some problems retrieving remote services. I traced the problem down to the ECF class "RegistrySharedObject" and realized that the method "addReferencesFromRemoteRegistry" does not have any remoteRegistry although I got several hosts connected and providing remote services. Any idea why?
No, no idea why at this point.
That method (addReferencesFromRemoteRegistrys) simply looks to see if
there are any remote registrations that have been received. If there
have not been any registrations received (via handleAddRegistrations)
when addReferencesFromRemoteRegistry gets called by
(getRemoteServiceReferences), then it won't find anything. It sounds as
if this is what is happening (I'm assuming that you are calling
getRemoteServiceReferences.
It's possible that you have a race...i.e. the references haven't been
received at the point when you call getRemoteServiceReferences. If you
want to make sure that the registrations are received from some remote
target you can listen for them with a RemoteServiceTracker...or you can
call getRemoteServiceReferences(ID targetID, ID[] idFilter, clazz,
filter) with some idFilter...and the getRemoteServiceReferences call
will then send a message to the target ids in ID[] idFilter...and wait
for their response...so, for example:
getRemoteServiceReferences(connectID, new ID[] { targetHostID }, clazz,
filter);
will wait for a response from targetHostID (if it has any remote
registrations in it's local registry at the time of the message receive).
Also...this code hasn't substantively changed since 3.4...the only
changes to RegistrySharedObject were unrelated issues...so it's a little
puzzeling to me why you are seeing changed behavior (from 3.4 I assume).
Also...I assume you mean 3.5.1? (as opposed to 3.5.0)?
If this doesn't help, then it might help to create a bug and post some
code that's showing different behavior for 3.4 and 3.5.1....along with
some more information about the use case and provider...if possible.
Thanks,
Scott