jWPS The Java WPS API, version .0.0.0.0.1 alpha

Thank you for downloading jWPS!!

This release is for feedback. It is not official and is offered to other developers.
It includes freely avaiable code from http://www.junit.org and the Apache Software
Foundation. All applicable rules laid forth by these organizations for propagating
their code remain in effect.

Thanks to Robert Harder, (rob@iharder.net) who wrote the Base64 encoder class and
was kind enough to put it in the public domain.

This also contains RWS 0.60 by Rich Walsh, who has generously agreed to allow me to 
distribute his excellent Remote Workplace Server with jWPS.

===> A more formal statement of the above will be forthcoming <===

Welcome!

This is a very crude release, more to get some folks to tell me what they think it needs. It is
not finished at all and parts of it are subject to change, but it has certainly stabilized enough
for people to play with it.

Contact info
-----------
I am Jeff Gaynor. You can write to me at jgaynor@jqhome.net with comments and suggestions.
Please put jWPS in yur subject line to get it past my spam filters.

What is it?
-----------

jWPS is a set of native C routines that allow java to manipulate OS/2. Normally java, being
platform independent, cannot do things like work with WPS classes, EAs, ini files and such. 
Since I do java, this got to be such a pain in the neck that I started writing these. Over time
they have accumulated and I have decided to release them. I have worked hard at making sure
that most everything you would want to do with OS/2 using the native C API can be done in 
java. This means that much of the functionality that people require from REXX is now available in 
java. Moreover, jWPS gives vastly more and on top of this the object-oriented origins of java make
working with WPS objects uncannily natural. If you know a bit about java, try it. Chances are
very good it will become an important tool in your programming.

Prerequsites
------------

You *must* have GoldenCode Developments java port. The Innotek port will not work. The basic reason is that
the Innotek port runs in what is effectively a WIN-OS/2 session and there is no concept of PM, the WPS
or anything similar. Therefore running it under the Innotek port will cause the JVM to crash. One of
my project goals is to get a version of this tweaked to work with Innotek, but chances are excellent
that they won't do it unless folks are interested in it first.

This *might* work against the IBM java 1.3.1 release, but I do not have a way to test it. If you do, please
send me feedback.

You need to set two system variables

JAVA_HOME = points to your java installation

JWPS_HOME = points to where jWPS was unzipped.

Now you should be ready to go, if your LIBPATH has a '.' in it. If not, out the .dll files someplace along there.

A few examples
--------------
There are a few ,cmd files. Read what they do. These are

b64-encode.cmd -- tool to base 64 encode/decode a file
jwp-test.cmd   -- runs the test suite. Read and edit jwp-test.properties
listEAs.cmd    -- lists all the EAs of all files in a given directory, printing a summary
jeautil.cmd    -- a java-based EA utility.

For more particulars, look at http://www.jqhome.net/jwps and in particular look at the ea primer.

Quick test
----------
Once you get this setup, just issue any of the above .cmd files. This will either tell you that things
aren't found (check your environment) or will just print out the default help.

A much longer test
------------------
If you really want to see if this works on your system, invoke jwp-test.cmd. 
If run from the jwps directory, this should run a huge battery (about 200) 
of tests. If you really want to run it from someplace else, 
read the comments in jwp-test.properties.

Note: if you get the message that it can't find something, set JWP_ROOT. If you are running everything
from this directory, the easiest way is to issue

set JWPS_ROOT=.
