intro setup details


Always I developed a small application, I had to spent a lot of time for deploying. Later on, my clients who were running that application, reported me bugs or wants me to enhance it. So I again had to spent a lot of time to upgrade each client with bug fixes or extentions.

On 2002 I read the JNLP (Java Network Launching Protocol) specification JSR-56. I realized, that this was the solution I looked for. The only implemention at that time I found was WEB-Start. But Web Start did not fit my requirements.

I looked for a very small app launcher which can be easy boundled with my Java apps. It should check for new version against resources which are stored on a dedicated webserver. Each time the app is started it should update itselfs and start that relying application. As far you can see, any of my requirements are specified by JNLP. Ok - in the meantime I found a couple of free implementation of JNLP-Clients.

Nevertheless I didn't need a full featured JNLP-Client. So I decided to develop a launcher which covers excactly that features I need.

What is WAL ?

WAL is a kind of a light JNLP-Client, which covers a subset of the JNLP spec. It serves :
  • A launcher which starts the main class of your application.
  • Supports a very ease coupling of your app.
  • The launcher is controlled by an XML document stored on a webserver of your choice.
  • Each time your deployed app is started, it checks first for new version on that webserver.
So if you looking about a simple update tool for your tools, WAL could be what you looking for. If you need more than what are listed above mentioned, use an alternative solution.

What is planned in a future relase ?

I have started this project to develop a simple update tool for my applications. So it is not my interesst to enhance it very much.

For the final release I have planned the following :
  • Option for a silent or interactive update process, actually only silent is supported.
  • A thread which alternate checks for updates while runtime. Actually the check for new resources is only done while startup
  • Eventually I put some effort in security concerns, like SecurityManager etc.