The increasing prominence of OSGi
Let me admit something: I don't get OSGi. I'm not saying I don't like it, I just don't really understand what it is or why it matters so much. The Wikipedia article isn't much help either, so over the past few months, I've been quietly nodding my head in seeming agreement as OSGi-related posts show up with increasing frequency among our weblogs. Back in April, Mandy Chung blogged about JSR 277 and OSGi interoperability and Supporting OSGi Bundles in the Java Module System (which kind of sound like the same thing, right?), along with Sahoo announcing you can run GlassFish V3 on OSGi, and Jean-François Arcand spoke at JavaOne about Grizzly's OSGi bundles. In fact, there was a lot of talk about OSGi at JavaOne, as noted by No Fluff speaker Vladimir Vivien, among others.
So, granted, it's a big deal. But still, what the heck is it?
Joseph Ottinger, editor of TheServerSide, has posted the first two installments of a series on OSGi. He says the idea is that he, "as a non-OSGi advocate, would like to take some time to try to explain OSGi to the people who don't know about it." And then he tries to get the definition out in under twenty four seconds:
The twenty-four second explanation: OSGi is a framework for Java in which units of resources called bundles can be installed. Bundles can export services or run processes, and have their dependencies managed, such that a bundle can be expected to have its requirements managed by the container. Each bundle can also have its own internal classpath, so that it can serve as an independent unit, should that be desireable. All of this is standardized such that any valid OSGi bundle can theoretically be installed in any valid OSGi container.
Only problem here is that not only is that longer than 24 seconds, it also doesn't explain why you'd want or need a module system. For the complete story, start with his first article,
OSGi for Beginners, which introduces the concepts of OSGI and shows how to build OSGi bundles, register services, build simple dependencies on other bundles, and look up services from other OSGi bundles. A second article introduces The Whiteboard Pattern for OSGi, advocated by some as a more efficient way to use OSGi, with an eye to its strengths and weaknesses.
Also in Java Today,
the latest in the SDN's series of Enterprise Tech Tips is Ron Monzillo's Adding Authentication Mechanisms to the GlassFish Servlet Container. "This tip will show you how to implement and configure new authentication mechanisms in the GlassFish v2 servlet container. GlassFish v2 includes implementations of a number of HTTP layer authentication mechanisms such as Basic, Form, and Digest authentication. You can use the techniques described in this tip to add alternative implementations of the included mechanisms or to add implementations of new mechanisms such as HTTP Negotiate/SPNEGO, OpenID, or CAS."
In another JavaOne interview podcast, Barton George is Talkin' with Charlie and Tom, the JRuby Guys. Topics include the history of Ruby, Rails, and JRuby, licensing choices, JRuby's integration with GlassFish and NetBeans, the DaVinci machine project, jMaki, and whether we might see a JPerl.
The latest JavaOne Community Corner Podcast is
j1-2k8-mtT05: Project Wonderland: Community-built Virtual Worlds.
In this session, Nigel Simpson and Nicole Yankelovich show a number of different virtual worlds built by members of the Project Wonderland open source community members. Each highlights different aspects of the Wonderland platform and the wide range of possibilities open to developers.
In today's Weblogs, GiovaniÂ Salvador wonders about job candidates' understanding of architecture and the "big picture", in the blog
Java Architectural Knowledge for Job Interviews. Are we prepared?
"In lots of job interviews I have participated as interviewer for Java positions it is clear the lack of architectural knowledge some developers have. Here I post a typical dialog between one developer and I and some considerations about it."
Embeddable GlassFish in Action - Servlet in a Maven project. ArunÂ Gupta writes,
"Kohsuke announced the embedability of GlassFish v3 - this is really cool! Now you can run GlassFish inside an existing JVM, without the need to start it externally."
Finally, with some hackery to wrap the week, RÃ©miÂ Forax shows off
Javac + invokedynamic.
"To celebrate the public availability of JSR2 EDR, i have patched javac (yes again) to be able to generate method call using invokedynamic."
In today's Forums,
How to automate webstart deployment.
"How are people automating their webstart deployment? I'm returning to the webstart fold and I'm a bit saddened to see that it's still difficult to automate a webstart deployment. So I'm curious if there are any solutions out there that I simply don't know about. Any magical ant tasks that offer push button automation for webstart? I've searched google and come across a few but they all seem to be woefully out of date. So what are people using to automate their webstart deployment?"
kcavanaughhas a detailed explanation for a thorny CORBA problem in
Re: Possible to include HTTP header information as part of RMI-IIOP?
"Yes, it is possible to do exactly what you want to do by adding a CORBA ServiceContext to the GIOP request and response headers. The programmatic API for this is called Portable Interceptors. Using it is a bit complicated, but here are a few references (also easily found on Google)..."
Finally, Shai Almog points out the latest forum / mailing-list mirror, in
Re: Mailing list cross posting to newly created java.net LWUIT forum.
"Thanks again Roger. We now have a forum infrastructure similar to the one used by other java.net projects it can be accessed here:
http://forums.java.net/jive/forum.jspa?forumID=139. Notice that what Roger fixed is that posting there should be mirrored here. If there are any problems please let me or Roger know about it."
Current and upcoming Java
- MayÂ 19-23 - Daring Java Conference: Java to Celebrate Its 13th Birthday at Bangalore
- MayÂ 19-23 - Great Indian Developer Summit 2008 Features Co-located Conferences on Java, Rich Web and .NET
- MayÂ 19-23 - J2EE Training Philippines
- JuneÂ 6-8 - Lone Star Software Symposium 2008: Dallas Edition
- JuneÂ 18-20 - TheServerSide Java Symposium-Europe
- JuneÂ 20-22 - Research Triangle Software Symposium 2008
- JuneÂ 23-26 - Jazoon'08
- JulyÂ 11-13 - Lone Star Software Symposium 2008: Austin Edition
- JulyÂ 18-19 - Salt Lake Software Symposium 2008
- JulyÂ 25-27 - Central Ohio Software Symposium 2008
- JulyÂ 25-27 - Desert Southwest Software Symposium 2008
Registered users can submit event listings for the
href="http://www.java.net/events">java.net Events Page using our
href="http://today.java.net/cs/user/create/e">events submission form.
All submissions go through an editorial review before being posted to the
Archives and Subscriptions: This blog is delivered weekdays as
Today RSS feed. Also, once this page is no longer featured as the
front page of java.net it will be
archived along with other past issues in the href="http://today.java.net/today/archive/">java.net Archive.
The increasing prominence of OSGi