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

Pam - Package Manager for Java Web Start

Kick Start Pam Now download link

What is Pam?

Pam is Vamp's Package Manager modeled after Red Hat Package Manager.

Pam allows turbo-charged, offline installation of Web Start apps directly into Web Start's cache. Pam honors whatever codebase is specified in the JNLP descriptor and adds all entries to Web Start's cache by itself without any help or hand holding from Web Start.

Pam, for example, allows you to create your own CD app collections that you can share with everyone who deserves your generousity saving Gigas of download time.

Pam allows you to group your Web Start app packages. By default Pam reads in all files and directories under <user.home>/.venus/MyPackages. Pam assumes that all directories and subdirectories are groups and all files are packages. Example:

To add an app to a group simply copy it where you think it fits in and hit refresh to tell Pam to rescan your updated app collection. To create a new group simply create a new directory and hit refresh to announce it to Pam.

Pam allows you to use packages bundled in web archives (.war), in client archives (.car) or in Clio CD installers (.jar).

Pam automatically extracts all JNLP descriptors from packages and displays their contents such as vendor, title, version, homepage or files in a unified format to give a quick overview and an in-depth understanding of the app before committing to a turbo-charged, offline installation.

Pam uses Celia as its cache installation engine. For further details check out Celia.

Pam uses Web Start's jnlpx.home property to find your Web Start cache automatically and spares you from any setup hassle.

First Impression - Pam In Action

Pam dressed up in Kunststoff L&F catching a breath after installing

Pam First Impression

What is a Client Archive (.car)?

Client archives (.car) are standard jars that include all required jars, icons as well as a all required JNLP descriptors including extensions that are needed by an app in a single jar.

Example: Contents of client archive

Note, that all hrefs in JNLP descriptors must be relative to the codebase and must not refer to a location above the codebase.

You can use Vamp Studio or the vampget command line tool to suck Web Start apps from the Web and squeeze them into single-jar client archives.

Or if you are daring enough you can create them manually using Sun's jar tool, WinZip or any other zip tool after having analyzed all necessary JNLP descriptors and downloaded all necessary files.

Property Reference

Use the properties below to adjust Pam to fit your needs:

Property Description Default
dir.jnlp.package Root directory for your own package collection $user.home/.venus/MyPackages
jnlpx.home Set by Web Start. If you run Pam without Web Start, you need to set jnlpx.home yourself, otherwise leave it alone.
jws.home.dir Web Start's home directory similar to jnlpx.home. Additional level of indirection allows changing of Web Start home without effecting Web Start's own home property. $jnlpx.home
jws.cache.dir Location of Web Start's cache directory $jnlpx.home/.javaws/cache

Pam uses Celia as its cache installation engine and, therefore, has the same limitations as Celia.

Pam currently cannot handle relative paths that reference directories above the codebase or absolute paths that use a different codebase or reference directories above the codebase. Example:

<jnlp href="JBeanStudio.jnlp"
  <icon href="../images/JBeanStudioIcon.gif" />

The icon's directory jbeanstudio/images cannot be added to a self-contained, single-jar web archive or client archive because it is not a subdirectory of the codebase's root directory jbeanstudio/deploy. The codebase is used as the base directory for self-contained, single-jar web archives or client archives.

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