New IcedTea Project
IcedTea-Web attempts to fill in some of the parts that OpenJDK does not supply.
Last month, Senior Developer at Red Hat Deepak Bhole announced
first release of the IcedTea-Web project, an open source addon
component to the IcedTea harness. The first release of IcedTea-Web
contained a Java web browser plugin, a Net X-based Java Web Start
implementation and an alpha preview of the IcedTea-Web GUI tool. In
this interview, JAXenter speaks to Deepak Bhole about the new
project, how it relates to IcedTea and Net X, and what we can
expect from IcedTea-Web in the future.
JAXenter: You recently announced the first
release of IcedTea-Web. How does this project relate to
Deepak Bhole: IcedTea-Web attempts to fill in
some of the parts that OpenJDK does not supply but the proprietary
Oracle JDK does. More specifically, it consists of a web browser
plugin, a Free Web Start – javaws – implementation based on NetX,
and itweb-settings, a deployment configuration tool.
Initially the plugin and Web Start implementations were part of
the IcedTea repository. After having had to do a few IcedTea
releases just to push new plugin and Web Start updates, we realized
that it might be better to split those into a separate project that
can release independently. This has the added benefit that
IcedTea-Web can be built without having to build the entire
The first release of IcedTea-Web contained the plugin, the Web
Start implementation, and an alpha preview of a new tool we’ve been
developing to allow easy deployment configuration of the plugin and
Web Start implementations.
JAXenter: IcedTea-Web.1.0 contains an alpha
preview of itweb-settings. How does this tool work?
Deepak: The tool is a Java Swing based
application to control deployment settings. For a while, a lot of
the settings were embedded in the Java code of the plugin and Web
Start implementations. This was later moved into a
deployment.properties configuration file. While that made it a bit
easier to work with, it still lagged in terms of ease of use,
especially compared to something like the Control Panel tool that
is part of the Oracle JDK.
In addition to having a GUI, there is also a rich command-line
interface to itweb-settings. The CLI allows a user to modify, view
and check configuration values. All supported options can be seen
by running “itweb-settings help”
itweb-settings will ultimately be able to control settings like
proxies, cache, logging, etc. and do certificate management as
well. Most of this is already in, and the rest of the pieces are
being filled in as time passes.
JAXenter: How does the project build on NetX,
on which it is based?
Deepak: NetX is a Free Web Start implementation
originally written by Jon A. Maxwell. When we, IcedTea, started
looking at it, the project had already been dormant upstream for a
while. Given the inactivity, it made sense to fork the project and
develop it as part of IcedTea which was far more active.
The Web Start implementation in IcedTea, and now in IcedTea-Web,
is based on NetX. NetX was not fully complete when we forked it, so
we made enhancements on top of it that include features like the
ability to run outside the sandbox, handle 3rd party certificates,
signed jars, etc. As enhancements are made to the Web Start
specification, we try to keep our implementation updated
accordingly. The original NetX project could handle JNLP files that
conformed to the 1.0 specification only. The Web Start
implementation in IcedTea-Web can handle files all the way up to
the latest 1.6 specification.
Furthermore, a large part of the requirements for the web
browser plugin are the same as those for Web Start. So rather than
duplicate the effort, the plugin defers to that code for shared
JAXenter: What can users expect from the next
major release of IcedTea-Web?
Deepak: Certainly more stability I would say.
Over the past year especially, we have been doing heavy development
on all the components of IcedTea-Web. As those components mature,
we will be shifting our priority to fix the little but annoying
issues, and to make the components more stable overall.
Some of the major upcoming features on our list include:
- Ability to work with upstream OpenJDK
– Better proxy support, including support for proxy auto-config
– Better cache management to manage individual application
– Per application security policies
We also maintain a list with more release specific feature plans
on our wiki.
I would also like to mention a quick thanks to all of the
IcedTea-Web contributors who have made this project possible.
Though there are many to name, I feel at least a few key ones
should be acknowledged: Dr. Andrew John Hughes for writing and
maintaining the build system and files; Omair Majid for numerous
enhancements to the Web Start implementation; and Andrew Su for
developing and maintaining itweb-settings.