But what is OSGi?
I've been trying to write an introductory article about OSGi for a few days. But the problem is that it's such a a simple yet powerful technology that I didn't really know where to start, what angle was best. And then I found two excellent articles that really... "opened my eyes" and that I want to share with you:
- The first one is a very "hands-on" one in the form of a tutorial about setting up Equinox (Eclipse's OSGi implementation) and everything around it to work with bundles. It's tightly coupled with Eclipse, but since that's what most people are using, why not. And it's very high quality.
- The second one is even more interesting, it's written by Costin Leau, project lead for Spring Dynamic Modules at SpringSource, and it gives comprehensive information about the most fundamental concept in OSGi: bundles. Really a must-read.
Now I would love to have your opinion about the content of this zone. What do you think of that kind of article? What questions do you have related to OSGi?
Oh, and by the way, if anyone reading this plans to attend OSGi DevCon next month, it would be really great if we could cover this event in OSGi zone. Unfortunately I can't cover it myself because Santa Clara is quite far away from Belgium. But if you are interested in giving us your impressions and writing about the latest news announced there, feel free to get in touch.
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)






Comments
Johannes U. J. replied on Mon, 2008/02/18 - 12:14pm
The question I have isnt as much about OSGi as it is about modules. OSGi is apparently a super good solution to using modules, but what I would like to know is why I need modules. What do they bring to the table that I cant do without, or is quite harder without? Obviously applications like Eclipse benefit hugely from a nice module system, but are there less extreme cases that I can use modules for?
Sebastien Arbogast replied on Mon, 2008/02/18 - 1:57pm
It's a little bit like Flex. It's difficult to see what you can't do without a new technology until you realize that you've got so used to the limitations of older technologies that you just can't imagine how limited you are. Then you try it and you realize that it opens up so many possibilities.
There are a few use cases though, where OSGi is obviously a great step forward for us Java developers.
- I'm working on a server application with two access interfaces, SOAP and REST, and each access interface is in a different web application. They are both using the same libraries, except for a few exceptions where various version collide in a very ugly way. The only viable solution I found was to deploy 2 web applications with a copy of each library in both WAR archives. Not very easy to distribute. Not very easy to maintain. And deployment in production environment over SFTP is really a pain. OSGi offers a solution for that.
- Have you ever noticed as most popular CMS systems use PHP? I see a very simple reason for that: since PHP is interpreted, it's naturally great for extensibility and dynamic insertion of modules. I won't trigger a Java vs. PHP debate here, but let's just say that I'm far more confortable with Java. With OSGi we can have the same degree of flexibility and extensibility with Java enterprise applications. And suddenly my dream to have a flexible and extensible collaboration suite in Java becomes possible.
Other examples anyone?Al replied on Mon, 2008/02/18 - 5:37pm
in response to:
Sebastien Arbogast
Marcel Offermans replied on Mon, 2008/02/18 - 6:58pm
To be honest, OSGi has a lot more features when it comes to handling dependencies than something like POMStrap. If your needs are modest, such a tool might be enough, but OSGi has a lot more features, such as dynamically updating modules, having multiple different versions of modules available to different parts of your application and dependency management that is based on interfaces, not implementations, which gives you better substitutability.
And Sebastien, I will be attending EclipseCon and the OSGi DevCon, giving a workshop about building secure OSGi applications. I definitely would not mind covering the event here.
Rick Ross replied on Mon, 2008/02/18 - 8:58pm
in response to:
Marcel Offermans
Marcel, you are very kind to offer to help cover OSGi topics from EclipseCon here. Thank you!
Rick
Marcel Offermans replied on Tue, 2008/02/19 - 9:33am
googlsa puyad replied on Sat, 2009/05/23 - 10:28am
-------------------------------------------------
Links of London Links of London Bracelets Links of London Charms
michael james replied on Sun, 2009/06/14 - 7:01am
in response to:
Al
The OSGi Alliance (formerly known as the Open Services Gateway initiative, now an obsolete name) is an open standards organization founded in March 1999.
regards,
Degrees Forum
eugene backs replied on Mon, 2009/06/15 - 4:41am
Software complexity is increasing at an alarming rate. Today, a large part of this complexity is caused by shortened product cycles, requirements for drastically increased functionality, and an increasing number of variations of the same product (e.g. different hardware and operating systems). These trends have caused software costs to become a larger percentage of almost any manufacturer's development cost.
cheers,
locking mailboxes
eugene backs replied on Wed, 2009/06/17 - 5:42am
The Open Services Gateway Initiative OSGi is an independent, non-profit corporation working to define and promote open specifications for the delivery of managed services to networked environments, such as homes and automobiles. These specifications define the OSGi Service Platform, which consists of two pieces: the OSGi framework and a set of standard service definitions.
great,
Cheesecake Recipes
eugene base replied on Wed, 2009/06/17 - 9:26am
The Spring Dynamic Modules for OSGi(tm) Service Platforms project makes it easy to build Spring applications that run in an OSGi framework.
cheers,
knowledge base
eugene base replied on Fri, 2009/06/19 - 2:37pm
OSGi has been mentioned quite a bit in the industry lately, with Equinox becoming a top-level project for Eclipse, Felix being used as a container for Sling and Glassfish V3, and Spring-Modules being released. That said, a lot of people who are unfamiliar with OSGi ... are still unfamiliar with it, no matter how much the people who use OSGi regularly know about it.
cheers,
Electric Train Sets
eugene base replied on Thu, 2009/06/25 - 12:10pm
From a code point of view, Equinox is an implementation of the OSGi R4 core framework specification, a set of bundles that implement various optional OSGi services and other infrastructure for running OSGi-based systems.
regards,
health insurance leads
dany rich replied on Fri, 2009/06/26 - 1:43pm
This trend requires monolithic software products to undergo a heavy testing cycle. Add unsynchronized evolution of the different libraries and it becomes clearer why software development is so costly today
concert tickets
rahul roy replied on Sat, 2009/06/27 - 11:53am
rahul roy replied on Sun, 2009/06/28 - 5:06am
eugene base replied on Mon, 2009/06/29 - 4:06am
In his daily update at java.net, Chris Adamson writes about the increasing prominence of OSGi. But also admits that he just doesn’t “get” OSGi, and it seems he’s not the only one. Perhaps we in the OSGi community, in our enthusiasm for explaining the cooler features of OSGi, have not done a great job of explaining what OSGi is and why it matters.
regards,
gratisinserate
rahul roy replied on Mon, 2009/06/29 - 9:34am
dany rich replied on Mon, 2009/06/29 - 9:27pm
The OSGi Alliance (formerly known as the Open Services Gateway initiative, now an obsolete name) is an open standards organization founded in March 1999. The Alliance and its members have specified a Java-based service platform that can be remotely managed.
hot tub spa