[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [equinox-dev] Re: Adding to the framework exported libraries?
|
Fragments are supposed to be subservient to its host, for example,
language translations.
Why do you need fragments if you need to actively provide services?
Kind regards,
Peter Kriens
DK> I've been wondering how to register services from a fragment.
DK> As far as I know, a fragment *cannot* have a bundle activator.
DK> Without a bundle activator, how does a fragment get access to its
DK> bundle context through which it can register services?
DK> What am I missing?
DK> /djk
>> Message: 4
>> Date: Mon, 12 Feb 2007 07:44:35 +0100
>> From: Gunnar Wagenknecht <gunnar@xxxxxxxxxxxxxxx>
>> Subject: [equinox-dev] Re: Adding to the framework exported libraries?
>> To: equinox-dev@xxxxxxxxxxx
>> Message-ID: <eqp2ci$9e1$1@xxxxxxxxxxxxx>
>> Content-Type: text/plain; charset=ISO-8859-1
>>
>> Kabe wrote:
>> > Hi Tom, thanks for the suggestion. Only reason i don't think this
>> will
>> > work (and maybe i'm wrong?) is that i need my host application to
>> expose
>> > instances (services) to the bundles, so for example my host
>> application
>> > creates in instance of FooService, and then registers it with the
>> root
>> > BundleContext of the Equinox framework. However, unless i somehow
>> tell
>> > Equinox that the package is available from the host (parent
>> classloader)
>> > it won't let any bundle load that depends on this package. So far
>> i'm
>> > not seeing how Fragment Bundles can solve this problem, because they
>> > seem like they need to be full bundles and not just passed in,
>> but there
>> > could be some API or technique i'm not familiar with?
>>
>> The system bundle is "org.eclipse.osgi". It exports the system
>> packages.
>>
>> Fragments contribute to the classpath of their bundle host. Thus,
>> if you
>> create a fragment to "org.eclipse.osgi" you can add the packages from
>> your application to the set of exported packages of the system bundle,
>> which makes them available to all bundles.
>>
>> For registering your services from the host application I suggest
>> creating a bundle that is started when the framework is started. This
>> bundle can register any OSGi services, etc. It could be also the
>> fragment you created above.
>>
>> Cu, Gunnar
DK> _______________________________________________
DK> equinox-dev mailing list
DK> equinox-dev@xxxxxxxxxxx
DK> https://dev.eclipse.org/mailman/listinfo/equinox-dev
--
Peter Kriens Tel +33467542167
9C, Avenue St. Drézéry AOL,Yahoo: pkriens
34160 Beaulieu, France ICQ 255570717
Skype pkriens Fax +1 8153772599