# Java(tm) Communications API Solaris Installation Instructions

Version 2.0

License

1. Obviously you have successfully untarred this distribution.

2. Ensure that the library `libSolarisSerialParallel.so` can be loaded. You can do this either by adding `libSolarisSerialParallel.so` to the environment `LD_LIBRARY_PATH` or by copying `libSolarisSerialParallel.so` to `/usr/lib`.

   Example: Assuming your current working directory is where you extracted the distribution,

   `% setenv LD_LIBRARY_PATH `pwd`:$LD_LIBRARY_PATH`

   or, if you have administrative privileges on your machine,

   `% cp libSolarisSerialParallel.so /usr/lib`

3. If you are using JDK (not JRE) Add `comm.jar` to your classpath.

   Example: If you don't have a `CLASSPATH` set currently,

   `% setenv CLASSPATH `pwd`/comm.jar`

   or, if you have something in your `CLASSPATH` already,

   `% setenv CLASSPATH `pwd`/comm.jar:$CLASSPATH`

4. Copy the file `javax.comm.properties` to your `<JDK>/lib` or your `<JRE>/lib` directory. If you don't have write permission to `<JDK>/lib` or `<JRE>/lib`, you can keep `javax.comm.properties` in the same directory as `comm.jar`. The search order for `javax.comm.properties` is:
   1. `<JDK>/lib`
   2. the directory that contains the first valid `comm.jar` that is included in the classpath.

   The `javax.comm.properties` file must be installed. If it is not, no ports will be found by the system.

5. Make sure you have the JDK native thread package installed. This implementation only works with native thread. Look at http://java.sun.com/products/jdk/ for details.

6. You should now be able to run your comm application Example:

   `% java -native YourCommAppPkg.YourCommApp`

7. Several serial port sample applications are provided with this release. One of them is `BlackBox`. To run `BlackBox`, first add `BlackBox.jar` to your classpath:

`% setenv CLASSPATH BlackBox.jar:$CLASSPATH`

then run `BlackBox`:

`% java -native BlackBox`

8. One sample driver `NullDriver` is included in the `samples/NullDriver` directory. This is useful for folks attempting to write a new driver for their own hardware.

Running with the JRE (Java Runtime Environment)

Use the -cp option to the JRE to specify the path to the comm.jar file and to your application.

`% jre -native -cp /home/extra/comm.jar:/home/bin/BlackBox.jar BlackBox`

The `javax.comm.properties` file must be in the same location as the `comm.jar` file or no ports will be found.

API Documentation

The javadocs directory contains the API documentation generated by javadoc(1) from comments in the source code. To view the HTML files, point your browser at the main documentation page, javadocs\packages.html.

Notes/Known limitations

1. In the current implementation we do not support the notify methods listed below:
   - SerialPort.notifyOnRingIndicator
   - SerialPort.notifyOnOutputEmpty
2. In the current implementation we do not support port ownership contention resolution across multiple Java(tm) Virtual Machines. It also does not support uucp style ownership contention resolution.
3. DSR signal is not detected on SPARC stations due to Solaris Driver limitation.
4. Both parity errors and framing errors are reported as parity errors.
5. The get*() methods return what the Solaris driver believes the state of the port to be. It might not be 100% accurate.
6. Support for parallel port is very limited.

Known bugs:

1. setDTR doesn't work quite right on Solaris x86.

Copyright © 1998 Sun Microsystems, Inc.
All Rights Reserved.