Sophie Net: Vamp HQ - Luxor XUL - Rachel - Apollo - The Saturn Times - The Richmond Post Logo
All the tools to deliver rich, cross-plattform, zero-admin desktop apps built on open standards today
OverviewFront Page
What's NewHistory As It Happens
Upcoming EventsWhere Do I Go Tommorrow?
ScreenshotsPictures, Pictures, Pictures
TestimonialsWhat Users Say About Vamp
CreditsThanks, Thanks, Thanks
ContactAre You Real? - Ich Spreche Deutsch
Site MapFind It Quick
Vamp StudioPackage, Sign and Publish Your App
Package ManagerCreate and Share Your Own CD App Collections
App CentralFind the Best Apps On The Web
JNLP ValidatorDTD, XML Schema, Relax
jnlp2htmlCreate Your Own App Catalog
Web Start Cache ExplorerUnder the Hood: Web Start's Cache Revealed
Web Start Cache UtilityInject Your App Into Web Start's Cache
Ant Task SuiteAutomate, Automate, Automate
vampgetGrab Apps for Offline Consumption
CD App InstallerCreate Your Own Single-Jar, Offline Installer
CD App Installer IICreate Your Onw Self-Executing, Single-Jar Installer
CD Installer MissionGreat Things Are Coming
BinariesGet It Now
DocumentationPDF Booklets, Presentations
DiscussionAsk Questions
FAQAnswer, Answers, Answers
Professional Services
InfoHire Me - Yes, I'm Available
Web Start
Web Start LinksEverything to Get Started
Unofficial FAQAnswers, Answers, Answers
JNLP Tag Quick ReferenceQuick Reference to Tags and Attributes
JNLP Tag ReferenceAll Tags Explained, Real-World Examples
Configuration ReferenceHand-tune Web Start's configuration (jawaws.cfg); all config settings explained
Offline Installer TutorialCreate Offline, No-Java, High-Speed Installer for Web Start under Windows
Installation ResourcesCreate Your Own Java Runtime Plus Web Start Installer
os and arch CollectionLinux, Windows, Mac, Solaris
Java 2 Runtime DirectoryLinux, Windows, Mac, Solaris
Web Start 2.0If I Were King
Print Version Print Version

Hazel - JNLP to HTML converter

Launch Hazel Now download link

What is Hazel?

Hazel is Venus Application Publisher's JNLP to HTML converter. Hazel extracts all JNLP links from an HTML document and creates an informative, neat looking HTML document listing all JNLP applications along with their vendor, version, description, homepage and more. (Click here to see an example JNLP catalogue created by Hazel's built-in template.)

Hazel comes with a built-in template, but also allows you to use your own templates. Hazel uses Apache Velocity third-party link as its template engine and, therefore, spares you from learning yet another proprietary template syntax.

You could even abuse Hazel and let it spit out an XML document that you render using an XSL or CSS stylesheet or you could use Hazel to create an RSS document as Hazel's template engine isn't limited to HTML only, thanks to the ingenuity of Apache Velocity.

To spare you any setup hassle, Hazel ships with a simple front end gooey on top of the weight-lifting converter engine so you can launch Hazel with a single-click using Web Start.

First Impression - Hazel in Action

Hazel taking a breath after creating a JNLP catalog.


Hazel understands the following arguments:

Argument Description Required
Input File The HTML source document to process. You can either specify a URL or a plain-old vanilla file name. Note, that only links ending in .jnlp will be processed (e.g. <a href="clare.jnlp">), all others will be ignored. Yes
Output File The HTML document to create that holds your JNLP directory/catalogue/app listing. Note, that you can create whatever text document you like (e.g. XML, RSS, ASCII, etc.). You are not limited to HTML only. It all depends on the template you pass in. See below for details. Yes
Template File Your very own Apache Velocity third-party link template. If no template file is passed in, the built-in template will be used. No


Create JNLP catalogue for Sun's Web Start demo apps using Hazel's built-in template

  • Input File:
  • Output File: c:/apps/sun.html

Create JNLP catalogue from your personal JNLP antique app collection using Hazel's built-in template

  • Input File: c:/doc/antique-collection.html
  • Output File: c:/apps/vintage80s.html

Create JNLP catalogue for Vamp's apps hosted at using a custom template

  • Input File:
  • Output File: c:/sandbox/website/apps.html
  • Template File: c:/sandbox/hazel/test/brief.html
Tips and Tricks

You can create your own personal JNLP collection using a simple hand-crafted HTML document that you feed to Hazel to create an informative, good looking JNLP app catalogue. Example:

      <title>Vamp App Collection</title>
       <a href=""></a>
       <a href=""></a>
       <a href=""></a>
       <a href=""></a>
Roll Your Own Templates

The best way to learn how to create your own template is looking at existing templates and getting familiar with Apache Velocity's template syntax. To see what information about JNLP descriptors is available checkout the template variable reference section below.

Apache Velocity's template syntax is well-documented at Velocity's home at third-party link

To meditate over existing templates or hammer them to fit your needs, check out Hazel's template gallery. Template donations are welcome.

Template Variable Reference

The variable set you can use currently is somewhat limited. Expect major improvements in the future. Here is the current set:

Variable Description
cat List of all JNLP descriptors
cat.size Number of JNLP descriptors in catalogue
today Today's date
<jnlp>.source JNLP descriptor URL
<jnlp>.header.version Version of application
<jnlp>.header.defaultInformation.title Title of application
<jnlp>.header.defaultInformation.vendor Vendor of application
<jnlp>.header.defaultInformation.description Short description of application
<jnlp>.header.defaultInformation.homepage Homepage URL of application
Limitations - Hazel isn't perfect

Hazel currently doesn't allow you to sort the listed apps using any criteria (such as vendor, supported locale, os, architecture, package size, estimated download time, last update, etc.) Hazel currently lists the apps in the catalogue in the same order as they appear in the HTML source document.

Hazel currently only accepts a single HTML source document and, therefore, doesn't allow you to pass in multiple HTML source documents at once.

Hazel currently creates a single HTML document holding the JNLP catalogue. Hazel does't create any indices and doesn't support splitting the content into multiple pages.

Hazel current template variable set is somewhat limited and Hazel currently doesn't allow you to exclude JNLP descriptors by type (e.g. installer, extension, applet or app).

Expect major improvements in the coming months.

All the tools to deliver rich, cross-plattform, zero-admin desktop apps built on open standards today Logo
Send your comments, suggestions or praise to Copyright © 2001, 2002 Gerald Bauer