felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Francesco Furfari <francesco.furf...@isti.cnr.it>
Subject Re: Autodiscovering Jams - a "vision" about improving the user experience
Date Fri, 24 Nov 2006 09:58:07 GMT
Thanks, it's in my agenda :-)
I just used it to discuss about things that IMO we could try to implement.
I hope it does not cause misunderstanding about JSR-277 goals.


Glyn Normington wrote:
> Hi Francesco
> I really do think you should read the JSR 277 EDR specification ([1]) to
> understand that there is currently no integration with OSGi.
> The only glimmer of light is Appendix C.7 which mentions a potential work
> item (for the JSR 277 Expert Group) on interoperability with other module
> systems:
>         "JSR-277 is an architecture that offers first class modularity
> support
>          in the Java platform. It may be possible to build or rebase other
>          module systems on top of this architecture, so they can take
> advantages
>          of the built-in modularity and the tight integration between the
>          language, the JVM, and the class libraries in the Java platform."
> As for the "vision" below - it's nice to dream... ;-)
> Glyn
> [1] http://jcp.org/aboutJava/communityprocess/edr/jsr277/index.html
> Francesco Furfari <francesco.furfari@isti.cnr.it> wrote on 24/11/2006
> 01:27:52:
>> Hi all,
>> moving from the jar autodiscovery idea, it's a while that I'm wondering
>> how  the user experience will change in Java 7 with java modules. I
>> haven't read the specification yet, so any idea here maybe is already
>> addressed by the guys working on it, but if you like we could enjoy
>> discussing about a new interaction style based on OSGi
>> I started to play around the  -jar option of Java executable by means of
>> which, clicking on a jar, we are able to launch a Java application. In
>> the following story whose actors are Peter and Sally the entity behind
>> the scene is an enhanced Felix daemon or if you prefer felixw.
>> At last Peter has the time for testing the bundle developed by Sally.
>> It is there, on the desktop. Peter right-click on the .jam file and a
>> popup menu lists all the OSGi profiles actually active. Sally has
>> packaged the bundle to start using the "SallyTest" profile but Peter
>> does not want to launch another felix container, and selects the already
>> active "office4" profile. A new window is opened by the bundle.
>>  << Cool !!  this time the UI is very cool. >>
>> Peter then brings the main Office4 window in front of all to see whether
>> the menu bar has been updated with the proper buttons.
>> <<All right. The buttons are showed and enabled, hence the services are
>> now registered and discovered, fine. Now closing the opened window the
>> bundle should not be stopped. Try. Perfect the buttons are still
>> displayed. Now let me stop the bundle from the console.>>
>> <<Lets go ... where is the Felix Tray icon ,  here!, right-button
>> click,  "active profiles" , "office4 ", sub-menu , "open console", done.
>> Now which is the bundle id ?  mmm 35 ok stop 35! perfect no error
>> messages and the buttons? disappeared! >>
>> << fine, fine. Now lets go to see the communication between profiles. I
>> want to test it with Spread4 but this time I launch the bundle as
>> standalone application.>>
>> Peter double-click on the Sally's bundle icon and then on the
>> Spread4.jam file.
>> Peter has configured  his Felix Deamon factory to start by default with
>> a JMX agent and the Event Manager that's every container can be
> monitored.
>> << Now filling this box the Sally's service should invoke the EA
>> sendEvents  method, but before let me linking Spread4 with the bundle.>>
>> << Link menu, link menu ... where is it? ah here! "active profile"
>> submenu ,"SallyTest", done. Before to become crazy let me check if the
>> connection with the agent has been established>>
>> Peter opens the Spread4 console clicking again on the Felix Tray icon
>> and its sub-menus.
>> << ok connection established, now from the "Avalable Services"  of
>> Spread4 menus  I should find our service. Lets go to see. perfect! >>
>> << will it work? try ...... sheet,  nothing happens,  why!? why? it has
>> always worked before!! #@# >>
>> Peter opens the console of the standalone application and read the
> message:
>> "not able to cash TranslationManager-0.8.0.jam"
>> Then Peter goes to unzip the jam file to take a look at the SallyTest
>> profile.
>> <<Let me think ...  mmm I understood, in the office4 profile the
>> TranslationManager was already cached probably Sally has forgot to
>> upload it in the Tomcat server>>
>> <<let me check>>
>> In auto.start property  the profile there's a pointer to a remote
>> bundle, then
>> Peter opens the last JConsole based on OSGi to see what is installed in
>> the remote server.
>> Peter has seen right, the last version of Translation Manager is missing.
>> Then Peter install the TranslationManager bundle using the OBR tab,
>> Tomcat is Felix based too.
>> << Done. Let me check the bundle directly from the browser so far>>
>> Peter launches Firefox3 (obviously osgi aware) then goes to the home
>> site of the product and read the web page.
>> "clicking on the link you can installing the product as a standalone
>> application or running it on an already active profile. Right clicking
>> and choose 'save as' to save a bundle on your PC"
>> Peter right-click the link, and Firefox3 shows a menu of the active
>> profiles of Peter's PC.
>> He choose "start as new", a  jvm is launched and a new "SallyTest-1"
>> profile activated.
>> Peter then links again Spread4 to the "SallyTest-1" profile and checks
>> again the service.
>> All works fine now. The EA is probed and when the box is filled the JMX
>> agent sends a notification to the Spread4 jvm, the message is posted
>> again in the Spread4 EA  and delivered to the subscribed services of the
>> application .
>> <<good. Sally has done a good work with the bundle>>
>> << tomorow I will try the features extraction and the fusion with our
>> bundle.
>> I want to try the extraction of the 'Chat' feature by Eclipse to see if
>> it can be merged successfully with our bundle >>
>> Peter closes all the active jvms from the Felix Tray icon and goes to
> home.
>> that's all
>> don't ask me what was developing Sally :-)
>> hoping it can enjoy and tickle for a further discussion
>> bests
>> francesco
>> Richard S. Hall wrote:
>>> Yeah, this is what I would have suggested too. This type of
>> functionality definitely does not need to be built into Felix.
>>> -> richard
>>> -----Original Message-----
>>> From:  Toni Menzel <tonimenzel@gmx.de>
>>> Subj:  Re: autodiscover bundles?
>>> Date:  Thu 23. Nov 2006 9:27
>>> Size:  676 bytes
>>> To:  felix-dev@incubator.apache.org
>>> Hi Wouter,
>>> A very simple autodiscovery (based on observing a directory) is Peter
>>> Krien's FileInstaller.
>>> You can find it here: http://www.aqute.biz/Code/FileInstall
>>> It's a pure bundle which works on any OSGi Implementation.
>>> I don't know if equinox functionality you descibe is usable on felix,
>>> too? (would be nice to know)
>>> greets,
>>> Toni
>>> Wouter de Vaal schrieb:
>>>> Hi,
>>>> I'm investigating osgi frameworks and I was wondering if Felix has
>>>> some sort of autodiscovery functionality as eclipse has. Some when a
>>>> jar is dumped in a folder, felix automatically loads this as an osgi
>>>> bundle.
>>>> Thanx
>>>> Wouter

View raw message