2.3_pre_jnlp7 <change log>

JNLP Jaxe

This page describes modifications to the Jaxe XML editor. The main intent is to support the Java Network Launching Protocol (JNLP), allowing Jaxe to run from JNLP clients such as Web Start.

Note: JNLP Jaxe is no longer maintained. It was used in another project, that no longer needs an XML editor.

Modifications  Limitations  Demo  Build  Install or Link  See Also

Modifications

Modifications are maintained as a parallel branch, [no longer] in sync with the trunk codebase. The main modifications are:

In summary, some modifications relate directly to JNLP launch; while others are intended as general improvements, applicable to any build, and any mode of launch.

For full details, see the change log.

Limitations

Demo

To launch Jaxe, click on the JNLP descriptor:

demo/JNLPJaxe/run.jnlp

Or, if your browser has Java, but fails to jump into action, then it must be taught to associate a .jnlp file with the javaws launcher. See Web Start in the Java Glossary for more information.

Or, ensure that you have Java 1.5 (or maybe later) installed; then enter this on your command line:

javaws http://zelea.com/project/jaxe/demo/JNLPJaxe/run.jnlp

Jaxe opens with a copy of this Web page (an XHTML document). You can edit it, and save it locally, if you like. [Apparently, there is a bug in Jaxe's rendering of list items. This document wasn't created by Jaxe. It might not be 100% valid...]

For those unfamiliar with Jaxe, here is a very brief introduction. This is how to create a new XHTML document:

  1. Close the initial window.

    A launch dialogue appears.

  2. Press New in the launch dialogue.

    An attribute dialogue appears.

  3. We won't add any attributes. Just press OK.

    An edit buffer appears, with an empty HTML document in it. To the left are some Insert buttons, "head" and "body".

  4. Press "head". (And when the attribute dialogue pops up, press OK again.)

    The head element is inserted.

    Tags colour orange, warning that the structure is invalid. (It lacks a title, and a body.)

  5. Press "title".

    The title element is inserted.

  6. Type "hello world" in between the title tags.

  7. Cursor down past the head tag, till a "body" button appears at the left.

  8. Press "body".

    The body element is inserted.

  9. Press "paragraph".

    A paragraph element is inserted.

  10. Type "Hello world!" in between the paragraph tags.

  11. Select menu item File|Save, and save it as hello.html.

    It saves the file.

  12. Select File|Close.

    The edit buffer disappears, and the launch dialogue reappears.

  13. Press Open, and select the file hello.html.

    The edit buffer reappears, as before.

That's it. That's the brief introduction.

Build

  1. With your Darcs client, use 'darcs get' to obtain the source from the repository located at address http://zelea.com/project/jaxe/repo/.

  2. Read the comments in the build script jaxe/build.xml, specifically for the target dist-jnlp.

  3. Run the build script. For example:

    ant dist-jnlp

If you want to build other targets, you will need the dictionaries. They have been removed from this repo. Simply copy them from any standard Jaxe distro, and them to your repo under jaxe/dicos/. (And add the same directory to your Darcs boring file.)

You can either install JNLP Jaxe, or link to an existing installation. To install:

  1. Locate the installation files. If you built the code from source, the installation files are located in your dist/JNLPJaxe/ directory.

    Otherwise, use the pre-built demo files in demo/JNLPJaxe/.

  2. Copy the installation files to a server (e.g. your Web server).

    Included is the JNLP descriptor run.jnlp.

  3. Modify the JNLP descriptor according to its instructions.

    JNLP clients can now run Jaxe.

Or, you can link to an existing installation of JNLP Jaxe, e.g. to embed Jaxe as a component of a larger Web-launched application. To do this, reference the component descriptor of the remote Jaxe installation from within the application descriptor (.jnlp file) of the central application. For example:

    <resources>
        <jar href='1.jar'/>
        <jar href='2.jar'/>
         etc.
        <extension name='JNLP Jaxe'
         href='http://zelea.com/project/jaxe/demo/JNLPJaxe/component.jnlp'/>
        </resources>
    

When the application launches, it will incorporate Jaxe from the remote server. No need to install Jaxe JARs on the central server.

See Also

For full details on Jaxe, see http://jaxe.sourceforge.net/.

JaxeCocoon also launches via JNLP, but with a difference: it edits files remotely, on the Web server. It cannot read or write local files. See http://wiki.apache.org/cocoon/JaxeCocoon.

Copyright 2006, Michael Allan <mike@zelea.com>.

Jaxe is free software, so are these modifications. For license details, see http://jaxe.sourceforge.net/.