Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [riena-dev] Extension injection

Stefan,

as I understand this:

you have one OSGI server application
inside this application you can use extension points as usual

then you have n OSGI remote applications (per ex. RCP)
inside these applications you can also use extension points as usual

what Riena Remote Services adds to 'normal' OSGI applications:
you can use OSGI Services from your Server remote in your client application

these remote services use 'internal' WebService-EndPoints and HTTP (Hessian)
to 'transport' the service from server to client

ekke

Stefan Diener schrieb:

Hi, Riena developers,

I'm planning to use Riena for an distributed RCP application. Therefore I
examined the PingPong example and Inject.service(...) for the service binding.
This worked out very well for me, but as I started to examine
Inject.extension(...) things went hopeless.

I have defined an extension point in a common plug-in. The contributor plug-in
provides an extension for the extension point. The contributor plug-in depends
on the common plug-in. Both plug-ins run inside an Equinox based application.

The consumer plug-in uses Inject.extension(...) to get notified when there is
any extension for the specific extension point. The consumer plug-in depends
on the common plug-in too. Both plug-ins run inside another Equinox based
application.

The problem is that the consumer plug-in is never notified about the extension
of the contribution plug-in. I'm not sure what happens here, but from my point
of view there is no "remote" extension registry. For the services, there is the
RemoteServiceFactory that registers remote services. But is there anything
analogous for the extension registry?

Using services as remote services is a very good thing, but using the extension
registry and its mechanisms would be much better when developing an distributed
RCP application. So this question is very fundamental for me. Is there a kind
of "remote" extension registry? If so, how can I use it to access remote
extensions for any extension point?

Note: When running all 3 plug-ins inside the same Equinox based application,
everything is fine and the consumer gets notified about the contributor's
extension. There is a local extension registry only and that's sufficient in
this case. But it's not distributed any more...

However, maybe there's an easy and obvious solution that I don't know.
Any help is appreciated!

Thanks,
Stefan

--
Registergericht / Register court: Amtsgericht Traunstein, HRA 460 / local court Traunstein, certificate of registration no. 460
Geschäftsführender persönlich haftender Gesellschafter / Personally liable managing partner: Prof. Dr. Dr. h.c. Anton Kathrein, Dipl.-Betriebswirt (MBA-equivalent)
Erfüllungsort und Gerichtsstand / Place of performance and place of jurisdiction: Rosenheim

This e-mail is confidential and may contain privileged information. If you have received this communication in error, please notify us immediately by responding to this email and then delete it from your system. The sender therefore does not accept liability for any errors or omissions in the contents of this message which arise as a result of e-mail transmission. We believe but do not warrant that this e-mail and any attachments are virus free. You must therefore take full responsibility for virus checking.

_______________________________________________ riena-dev mailing list riena-dev@xxxxxxxxxxx https://dev.eclipse.org/mailman/listinfo/riena-dev


--

ekkehard gentz
software-architect
erp-consultant
max-josefs-platz 30, D-83022 rosenheim, germany
homeoffice (1+1 VoIP): +49 8031 2068 325
mobile (iPhone): +49 151 19424929
mailto:ekkehard@xxxxxxxxxxxxxxxxx
homepage: http://www.gentz-software.de
opensource: http://ekkehard.org
blog (en): http://ekkes-corner.org
blog (de): http://ekkes-ecke.org
skype: ekke.gentz
Steuer-Nr: 156/220/30931 FA Rosenheim, UST-ID: DE189929490


Back to the top