|
Release Notes
COUGAAR 12.2
|
Jump down to:
Introduction
This file contains the release notes for Cougaar 12.2.
Cougaar is an open-source, Java-based architecture that supports distributed,
agent-based applications.
Please visit the Cougaar Website
for overview slides,
documentation, news, and releases.
License
Cougaar uses the BSD-style "Cougaar Open Source License" (COSL).
Please see the License.txt (online version).
Contents
For documentation on the various zip, jar, and config files included in this release,
please see the Contents File.
What's New in this Release?
Cougar 12.2 is a minor release.
Changes:
- Defined new standard node/agent "template" parameters, which making it easy to
enable/disable many related infrastructure services using a single "-D" system property.
For details and examples, see the Cougaar Template Documentation.
- Added support for optional $COUGAAR_RUNTIME_PATH and $COUGAAR_SOCIETY_PATH
environment variables. The bin/cougaar script sets these as -Dorg.cougaar.runtime.path
and -Dorg.cougaar.society.path, respectively. These environment variables can be used
to separate the install directories into a shared, read-only $COUGAAR_INSTALL_PATH
(e.g. in /usr/local/cougaar) and a private, read-write $COUGAAR_SOCIETY_PATH overlay
path (e.g. in ~/my_app). The -Dorg.cougaar.jar.path and -Dorg.cougaar.config.path have
been modified to search the additionally search the above directories. For an example,
see the updated "hello world" and "ping" tutorials.
- Added a new "ping" sample application, which is now included in the "core" jar.
The example is comprised of:
This example is discussed in the Overview Slides
as both a code tutorial and system benchmark.
- Modified access to system properties, to allow Cougaar to run in environments
where property access is restricted, such as:
- An Applet, where the browser JVM security settings block access to most System
properties.
- A container engine such as Tomcat or WebLogic, where multiple Nodes can run in the same JVM,
and would otherwise have property conflicts if they shared the same System properties table.
The code change was a replacement of all calls to "java.lang.System.getProperty(..)" with
equivalent "org.cougaar.bootstrap.SystemProperties.getProperty(..)" methods, along with
similar changes for calls to Java's primitive wrapper classes (e.g. "Boolean.getBoolean(..)").
Developers are encouraged to use the new "SystemProperties" methods.
- Added a "loopback" naming service implementation, for use in single-node environments.
To enable, set the "wpserver" template parameter.
- Implemented a new "NodeApplet" to run Cougaar in a browser JVM. For a demonstration,
see the online example.
- Added Node "shutdown()" support for use in container environments, such as JBoss.
- Added support for optional "name" and "value" XML attributes in "vm_parameter"
and "argument" elements, e.g.:
<vm_parameter name="-Dalpha" value="beta"/>
<argument name="x" value="123"/>
At runtime these are simply concatenated together into the backwards-compatible format:
<vm_parameter>-Dalpha=beta</vm_parameter>
<argument>x=123</argument>
- Added a message transport JMS link prototocol.
- Added CommandLine "parse()" method to allow an external "exec(..)" application to
extract the -Ds from a Cougaar society XML file. We expect to use this feature for
better container and IDE integration, e.g. in Eclipse.
- Modified "-Dorg.cougaar.jar.path" parser to support comma separators, in addition to
the standard OS-specific path separator (":" on Linux and ";" on Windows). This makes
it easier to write cross-platform XML society files.
- Prototyped a new kind of knowledge representation for Cougaar
blackboard objects, called FrameSets. FrameSets are designed to create realtime
models of physical systems on the Cougaar Blackboard. The models are updated
in realtime and the FrameSet can infer additional updates. The FrameSet
capability is purely experimental (i.e. expect sporadic support), but will
have its own module for Cougaar v13. Currently, FrameSets are in the
org.cougaar.core.qos.frameset package of the qos module. Minimal documentation
can be found in the Cougaar Frames Documentation.
Release notes for older Cougaar revisions can be found in the
Cougaar 12.0 Release Notes.
Requirements
Cougaar requires Java version 1.5 or 1.6. For details, please see the
Installation Guide.
Installation
Please see the Installation Guide and
Overview Slides.
Documentation
For additional details, please review the following documentation:
Support
For information on problems that were detected after this Cougaar version was released,
please see the Online 12.2 Errata File.
Errata for older releases can be found in the Online Errata Directory.
For questions or issues, please subscribe to the
cougaar-developers mailing list and
browse the mailing list archives.
Subscribers can post emails to the mailing list at
cougaar-developers@cougaar.org
If the above sources do not address your question or problem, please submit a bug report or
enhancement request to the Cougaar Bugzilla Website.