BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News JSR 291 (OSGi R4.1) Available for Public Review

JSR 291 (OSGi R4.1) Available for Public Review

Bookmarks
JSR 291 has been made available for public review. JSR 291 is also known as OSGi core spec R4.1. This JSR strives to:
...define a dynamic component framework including component lifecycle for existing Java SE platforms. The dynamic component model will support assembly of applications from components and support implementation detail hiding between components as well as lifecycle management of those components.
OSGi itself has been around as a non-JSR specification for some time. Open source implementations include Equinox which forms the foundation for the Eclipse IDE, Felix, and Knopflerfish. Among the key features:
  • Allows for Reusable and Dynamic Components
  • Classloading allowing reload of parts of the application.
  • Fine-grained Service concept
  • Simple Life Cycle
  • POJO friendly
  • Extremely Light-weight
  • Deploy on Java ME, Java SE, Java EE
  • Good tooling support (Eclipse)

Expert group member Niclas Hedhman broke the news of the public review on his blog. The JSR 291 website has not been updated to reflect this change yet. In the meantime the draft is available for download on the JSR-291 mail archive.

Many industry veterans are watching the progress of this JSR in comparison to JSR 277/294. These JSR's are defining the packaging of modules and dynamic deployment in respect to the upcoming Java 7 Dolphin release. JSR 291 is targeted at existing needs and Java SE platforms.  From the specification documentfor 291:

No current JSR (either complete or in process) defines a dynamic component and lifecycle solution to run on top of the existing family of Java SE platforms. However, JSR 232 does include this capability to run on top of Java ME (CDC based platforms) along with a comprehensive set of mobility services.

JSR 277 has been filed to examine changes to the static module definition to be used within the Java SE platform for Java 7 (Dolphin) and beyond. JSR 277 is targeted for specification delivery in 2H/2007 with RI/TCK delivery as an integral part of Dolphin in 2008.

This JSR aims to address the current needs for dynamic components based on existing Java SE platforms. When Dolphin becomes available, the specification lead of this JSR will either perform a maintenance release of this JSR or raise a follow on JSR to add Dolphin to the list of compatible supported platforms and to exploit Dolphin technology for static modules, as appropriate.

Concern has been raised about the seemingly overlapping nature of these three JSR's overall. In the meantime industry use of OSGi has continued to increase in application server development and frameworks such as Spring while JSR 291 has been in development.

Rate this Article

Adoption
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • Votes

    by Corby Page,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    The best way to kill this JSR is through votes of the JSR committee. IBM, BEA, Intel, Apache, and Google should be leading the effort to vote no on future deliverables for the JSR. If I count correctly, they should only have to recruit three more 'no' votes to keep this bloat out of Dolphin.

  • Re: Votes

    by Corby Page,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Sorry, to clarify, I am talking about JSR-277. JSR-291 looks like it's coming along nicely. :)

  • looking quite promising, Spring support will also mean more adoption

    by Floyd Marinescu,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    I'm seeing a lot of interest in OSGi these days. I also had the opportunity to interview Adrian Colyer (Interface21) about Spring's OSGi plans and things are looking quite interesting - exposing Spring apps as OSGi bundles will be made fairly easy.

    I hope that these two competing efforts don't turn into another Sun vs. IBM + the community debate.

  • 50k for the RI and TCK

    by Noah Campbell,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Does anyone know if this is due to a licensing issue with the OSGi?

    -Noah
    www.noahcampbell.info

  • Re: 50k for the RI and TCK

    by Scott Delap,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Could you clarify what you are referring to in reference to 50k for the RI/TCK? JSR 277 and 294 do not have implementations yet to there is nothing you could purchase. OSGi is an open Java specification. The Eclipse Equinox implementation for instance is open source and has no cost. I really can't think of any way which licensing plays a role in this debate.

  • Re: 50k for the RI and TCK

    by BJ Hargrave,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    The $50K in the JSR 291 filing has nothing to do with OSGi licensing terms. You can see the OSGi spec license at www2.osgi.org/Main/OSGiSpecificationLicense. Something needed to be put in the JSR filing and the $ figure was just an upper bound. I fully expect the RI will come from open source (that is, no cost). The TCK will be licensed at no cost to qualified individuals and open source organizations. Commercial users of the TCK may be charged a fee (capped at $50K per the JSR filing).

  • Re: 50k for the RI and TCK

    by Stephen McConnell,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Just for reference - is it correct to assume that the OSGI does not have a formal TCK for any of its existing specifications?

  • Re: 50k for the RI and TCK

    by Glyn Normington,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Just for reference - is it correct to assume that the OSGI does not have a formal TCK for any of its existing specifications?

    No, for example the OSGi Core Specification, referenced by JSR 291, already has a TCK.

  • Re: 50k for the RI and TCK

    by Stephen McConnell,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Just for reference - is it correct to assume that the OSGI does not have a formal TCK for any of its existing specifications?

    No, for example the OSGi Core Specification, referenced by JSR 291, already has a TCK.


    Thank you for the clarification.
    Is the TCK available to the public?

  • Re: 50k for the RI and TCK

    by Glyn Normington,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Is the TCK available to the public?


    There are three ways to obtain the OSGi R4 TCK:

    • Pay for the TCK as part of JSR 232

    • I believe the JSR 232 TCK is available at no cost to qualifying open source projects and not-for-profit organisations.

    • Pay to join the OSGi Alliance



    I expect the same to be true of the OSGi R4 V4.1 TCK for JSR 291.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT