Guides
The JLense Forms Framework
The JLense Reports Framework
Authentication and Authorization in JLense
Deploying and Updating JLense Applications
|
-
What is Jlense?
-
JLense is a plugin-based application framework for building Java applications.
JLense consists of a core runtime kernel that supports 'plugins' and a set of plugins that support
the development of Java applications.
JLense is a platform that has been designed for building applications for small businesses.
By design, the platform does not provide a great deal of end user functionality by itself.
The value of the platform is what it encourages: rapid development of integrated features based on a plug-in model.
JLense provides a common user interface (UI) model for desktop applications.
At the core of JLense is an architecture for dynamic discovery of plug-ins.
The platform handles the logistics of the base environment and provides a standard
user navigation model. Each plug-in can then focus on doing a small number of
tasks well. What kinds of tasks? Accessing corporate data and services, logging,
reporting, managing the help system, scheduling...the only limit is your imagination.
The JLense platform defines an open architecture so that each plug-in development
team can focus on their area of expertise. Let the repository experts build the
back ends and the usability experts build the end user tools. If the platform
is designed well, significant new features and levels of integration can be
added without impact to other plugins.
The JLense platform uses the model of a common workbench to integrate features
from the end user's point of view. Features that you develop can plug into the
workbench using well defined hooks called extension points.
The underlying platform runtime uses the same extension model to allow plug-in
developers to add support for additional data types and customized
services, such as accounting, point of sale, and inventory services.
The artifacts for each feature, such as files and other data, are coordinated
by a common platform resource model.
The JLense project focus on the development of plugins that make it easier for
Java developers to create world-class, thin-client, Swing-based, GUIs that
integrate well with other standard technologies like XML, SOAP, CORBA, and EJB.
-
Why is JLense being released as Open Source Software?
-
JLense is open source software because the founder
needed a framework like JLense for some commercial software that he aspired to build.
However, a framework like JLense is a very ambituous undertaking and it quickly became
clear that he could use some help.
Opening sourcing JLense would be one possible way to get help with its development.
On the other hand, the original
goal that motivated JLense's creation was to create commercial software.
Giving away the fruits of your labor isn't generally a good business plan.
However, the founder finally came to the conclusion that the benefits of
collaborating with other developers on the development of the core JLense technology
would far outweight the cost of giving away the result of lots of his own labor.
JLense is open source with the hope that it will attract other developers that will
contribute to the project for everyone's mutual benefit.
The founder's plan is, therefore, to build JLense into a world-class application
framework and to build closed-source commercial software using the resulting framework.
JLense hopes to attract like-minded developers that are similarly convinced of the
benefits of open collaboration.
-
What's with the name 'JLense'?
-
The name JLense is a reaction to the name of the Eclipse project.
There was some speculation that the name of the Eclipse project was
perhaps specifically meant to suggest eclipsing of the 'Sun'.
While looking for a name for this project I read about a phenomenon called
gravitational microlensing.
In short, gravitational microlensing is similar to an eclipse in that
a large object passes between us and another star. But unlike an eclipse, which
obscures the more distant star, gravitational microlensing will cause
the more distant star to become more visible or brighter in appearance.
And that is what I hope JLense (the large object between the viewer
and the star) will do for Swing (the star).
-
What roles are defined for involvement in the JLense project?
-
The roles and responsibilities of people involved with the JLense
project are defined in a similar manner to those of the Apache Jakarta
project. For a detailed overview go the the
Jakarta
Roles and Responsibilities page.
Within the JLense project there will be users, developers, and
commtters. These groups are defined as follows:
-
Users - Users are those who are actively using JLense to build applications.
These people are not contributing code to JLense but are
making feature suggestions and reporting bugs.
-
Developers - Developers are people who write code or
documentation for the project. All developers who contribute
to a source file or documentation may add their name to the list
of authors for that file.
-
Committers - Committers are developers who have shown
a committment to the project by frequently contributing code
and/or documentation to the project. A Committer has write
access to the source code repository and gains voting rights
allowing them to affect the future of the project.
-
How are decisions made regarding changes or additions to JLense?
-
JLense follows the
model
used by the Apache Jakarta Project.
This is a voting model that is known as a "Minimum Threshold
Meritocracy". This term basically means that those who put
forth the most work and the best work are those that most affect
a project.
The act of voting carries certain obligations. Voting members are
not only stating their opinion, they are also agreeing to help do
the work.
To view this model in action subscribe to the development list of
one of the Apache projects.
-
How do you define Open Source?
-
The term open source is sometimes defined as a set of rights given
to those who use a piece of software or code.
- The right to make copies of the program and distribute the
program.
- The right to have access to the source code for the
program.
- The right to make improvements to the program.
-
Why is Open Source a better way to develop software?
-
We at JLense believe that the Open Source model is and inherently
better way of developing software. Here are some of the reasons
why:
-
Collaboration - Companies and Individuals can work on a
project that none of them could achieve alone.
-
Increased Security - Because code is in public view it will be
exposed to extreme scrutiny.
-
Increased reliability - software is peer reviewed
There are many people who have done a great job of explaining in
detail the advantages of Open Source. Here are a few links to
some great information:
The Business Case for Open Source
A Programmers Case for Open Source
-
Where is the money made in an Open Source project?
-
There are many ways of making money from Open Source Projects.
This paper gives some of the examples/models of Open Source
business models:
The
Business Case for Open Source
This business model for JLense can be summarized as follows:
Give away the razor and sell the razor blades.
In this model, you (effectively) give away a core product and sell
parts that complete or enhance the free core. The JLense group hopes to eventually
offer commercial products built with the open-source JLense framework.
-
How can I find out more about Open Source?
-
opensource.org
is a good place to start. For an in depth book on open source, go
to
here and read a free online version of Open Sources: Voices
from the Open Source Revolution from
Oreilly
You can find some really good information regarding Open Source
software in the commercial world
here
|