Java Reference
In-Depth Information
The paint program isn't intended to be independently useful; rather, it's used to dem-
onstrate common issues and best practices.
From a functionality perspective, the paint program only allows the user to paint
various shapes, such as circles, squares, and triangles. The shapes are painted in pre-
defined colors. Available shapes are displayed as buttons in the main window's toolbar.
To d r a w a s h a p e , t h e u s e r s e l e c t s i t i n t h e t o o l b a r a n d t h e n c l i c k s a n y w h e r e i n t h e c a n -
vas to draw it. The same shape can be drawn repeatedly by clicking in the canvas
numerous times. The user can drag drawn shapes to reposition them. This sounds
simple enough. The real value of using a visual program for demonstrating these con-
cepts will become evident when we start introducing execution-time dynamism.
We've finished our overview of the OSG i framework and are ready to delve into the
details; but before we do, we'll put OSG i in context by discussing similar or related tech-
nologies. Although no Java technology fills the exact same niche as OSG i, several tread
similar ground, and it's worth understanding their relevance before moving forward.
1.4
Putting OSGi in context
OSG i is often mentioned in the same breath with many other technologies, but it's in a
fairly unique position in the Java world. Over the years, no single technology has
addressed OSG i's exact problem space, but there have been overlaps, complements,
and offshoots. Although it isn't possible to cover how OSG i relates to every conceivable
technology, we'll address some of the most relevant in roughly chronological order.
After reading this section, you should have a good idea whether OSG i replaces your
familiar technologies or is complementary to them.
1.4.1
Java Enterprise Edition
Java Enterprise Edition (Java EE , formerly J2EE ) has roots dating back to 1997. Java EE
and OSG i began targeting opposite ends of the computing spectrum (the enterprise
vs. embedded markets, respectively). Only within the last couple of years has OSG i
technology begun to take root in the enterprise space.
In total, the Java EE API stack isn't related to OSG i. The Enterprise JavaBeans ( EJB )
specification is probably the closest comparable technology from the Java EE space,
because it defines a component model and packaging format. But its component
model focuses on providing a standard way to implement enterprise applications that
must regularly handle issues of persistence, transactions, and security. The EJB deploy-
ment descriptors and packaging formats are relatively simplistic and don't address the
full component lifecycle, nor do they support clean modularity concepts.
OSG i is also used in the Java EE domain to provide a more sophisticated module
layer beneath these existing technologies. Because the two ignored each other for so
long, there are some challenges in moving existing Java EE concepts to OSG i, largely
due to different assumptions about how class loading is performed. Still, progress is
being made, and today OSG i plays a role in all major application servers, such as
IBM 's WebSphere, Red Hat's JB oss, Oracle's GlassFish, ObjectWeb's JO n AS , and
Apache's Geronimo.
Search WWH ::




Custom Search