----- Original Message -----
From: "Neil Bartlett" <[email protected]>
To: <[email protected]>
Sent: Monday, October 17, 2011 3:46 PM
Subject: Re: How to find a class of bundle from Host application?
> Could you please explain a little more why you want to do this.
>
> What you're asking for may be possible, but these kinds of problems can
> nearly always be solved better using OSGi Services. For example, do you
> *really* need a class, or do you just need an instance of an object of a
> particular type?
Previously, our application are based on a app-server, business module is
implements as Spring/EJB;
But we have encounter such difficult:
1) When a new version application is update, the user always don't ask for the
the new version to replace the old version, but ask for the new and old version
system both run for a while simultaneously; Because the different organize of
the customer cannot migrate the new version simultaneously;
2) In our application there are always some business logical which should be
extract as shared service, but these services also must be versioned;
To resolve our practical problem , we need a plugin system, which can
contribute services of different version; and the application could choose
which one it can use; That's why we need first resolve a classes from osgi
before using the osgi service;
If we doesn't just limited in our practical problem, then we want to treat the
osgi to act as a "light weight service" system.
Here "ligh weight service" composed of two part : 1) contract: the java
interface; 2) implementation: the osgi service object;
That's to say, we wants:
1) A new "ligh weight service" could be installed at run time and is
discovered by client (exist in host-application);
etc: A jsp could resolve to the java interface of a "light weight service",
and invoke the osgi service;
2) The implementation of "light weight service" can be un-aware to client
(exit in host-application). and could be updated dynamically;
This is osgi's natual;
3) The update of "light weight service"' could be awared by the client, and
re-resolve to it.
This is only used for failure test, becuase updating of contract( the java
interface) can cause un-reasonable problem;
Actually, we just need to know: "contract is update, the client may corrupt"
,and give a report. that's enough;
> Rgds
> Neil
>
>
>
> On Monday, 17 October 2011 at 07:44, xuhb wrote:
>
>> Sorry, I expressed my requirement un-correctly;
>>
>> Actually, the host application just know the name of class and want to
>> choose such class from embedded osgi environment ?
>> Could I?
>> Must I create a bundle (which import such class) dynamically and retrive
>> class from the dynamic created bundle? Is there other facilitate method?
>>
>> Thanks any suggestion
>> ----- Original Message -----
>> From: "xuhb" <[email protected] (mailto:[email protected])>
>> To: <[email protected] (mailto:[email protected])>
>> Sent: Monday, October 17, 2011 2:32 PM
>> Subject: How to find a class of bundle from Host application?
>>
>>
>> > Hi:
>> > I am using osgi environment (felix) embedded in a Host Application;
>> > Now the host application want to use a class from a specified osgi
>> > bundle,
>> > Could standard osgi support such usage?
>> > or felix support such extension usage?
>> > Thanks any suggestion
>
>