Xvcl Build
CjOS Project @ cjos.sourceforge.net
Index
Bind Pages
Cjos Library
Cjos Pages
Cjos News Pages
Eric Pages
Introduction To Smart Api
Osgi Pages
Registry Api Pages
Smart Api Pages
Xvcl Pages
CjOS Project
Summary Page
Mailing List
Download
CVS
JOS Technical Edition
Support This Project
Xvcl Pages; [ Cjos Audience]
Contributed by Gilbert Herschberger (13 September 2005).

Overview

This document describes how to build an XVCL Processor using Apache Ant.

Reference

Contents

This document contains the following sections:

  • Section A - XVCL from FXVCL Project
  • Section B - XVCL from CjOS Project


Section A - XVCL from FXVCL Project

Introduction

This section describes how to re-build XVCL Processor 2.07 from the FXVCL Project on sourceforge.net using Ant.

Description

The xvcl.jar contains the following Java packages.

  • xvcl
  • xvcl.commands
  • xvcl.Sensor
  • xvcl.util

The xvcl.jar contains the following resources.

  • /dtd/xvcl.dtd
  • /dtd/xvcl-N.dtd
  • /config/config.properties

Puzzle

Without the XVCL program, the bootstrap procedure does not work as described in Section B. The xvcl.jar does not yet contain the XVCL program from the gchii.tools.xvcl1a package. This package was part of cjos-test-5.2.jar only for the purpose of testing.

Building

The following procedure illustrates how to build the xvcl.jar.

  1. Download xvclprocessor2.07.zip from the FXVCL Project website to the cvs/module/xvcl/src directory.
  2. cd cvs/module/xvcl
  3. ant
  4. Result: The xvcl.jar is written to the cvs/target directory.

Why rebuild?

There are at least two reasons to rebuild.

  • Building a jar from its original source code is a good idea.
  • A few files are missing from the official xvcl.jar.

By rebuilding,

  • the xvcl.jar is built from its original source code, and
  • resources are included so that
    • the 'default' (or 'file:/default') in DOCTYPE works as expected, and
    • the XVCL processor finds its configuration.

Inside version 2.07 from the FXVCL Project, the xvcl.jar does not contain any resource, such as data type definitions (DTDs) and configuration for the XVCL processor.

Configuration of XVCL processor

The XVCL processor is completely dependent upon its configuration file; without its configuration, the XVCL processor does not work at all. As distributed, the XVCL processor does not work at all because configuration.txt is missing from xvcl.jar.

DOCTYPE

A x-frame document includes a DOCTYPE.

 <!DOCTYPE x-frame SYSTEM "default">

or

 <!DOCTYPE x-frame SYSTEM "file:/default">

The frame parser maps 'default' (or 'file:/default') to a resource, either

  • '/dtd/xvcl.dtd' (without namespace), or
  • '/dtd/xvcl-N.dtd' (with namespace).

But because xvcl.jar does contain any resource, the 'default' (or 'file:/default') in DOCTYPE does not work as expected.


Section B - XVCL from CjOS Project

Introduction

This section describes how to re-build XVCL from the CjOS Project on sourceforge.net using Ant.

Description

The cjos-xvcl.jar contains the following Java packages.

  • gchii.tools.xvcl
  • gchii.tools.xvcl1a
  • gchii.tools.xvcl1b
  • gchii.tools.xvcl1c
  • gchii.tools.xvcl1e
  • gchii.tools.xvcl1g
  • gchii.tools.xvcl1h
  • xvcl
  • xvcl.commands
  • xvcl.Sensor
  • xvcl.util

The cjos-xvcl.jar contains the following resources.

  • /config/config.properties
  • /dtd/xvcl.dtd
  • /dtd/xvcl-N.dtd
  • /gchii/tools/xvcl1b/config.properties
  • /gchii/tools/xvcl1c/config.properties
  • /gchii/tools/xvcl1e/config.properties
  • /gchii/tools/xvcl1g/config.properties
  • /gchii/tools/xvcl1h/config.properties
  • /META-INF/command/xvcl

Building

The following procedure illustrates how to build the cjos-xvcl.jar.

  1. Resolve build-time dependencies.
  2. cd cvs/xvcl
  3. ant
  4. Result: The cjos-xvcl.jar is written to the cvs/target directory.

Resolving build-time dependencies

This Ant script depends upon

  • cjos-smartapitask.jar,
  • cjos-test-5.2.jar,
  • cjos-universalbrowser1c-5.2.jar, and
  • either xvcl.jar or cjos-xvcl.jar.

Bootstrap

The following procedure illustrates how to build cjos-xvcl.jar for the first time.

  1. Build xvcl.jar. This does not require XVCL.
  2. For Ant, install xvcl.jar.
  3. Build cjos-xvcl.jar. This requires an XVCL processor. It uses the XVCL processor from xvcl.jar.
  4. For Ant, replace xvcl.jar with cjos-xvcl.jar.