Author: cwiklik
Date: Fri Jan 28 15:24:49 2011
New Revision: 1064728

URL: http://svn.apache.org/viewvc?rev=1064728&view=rev
Log:
UIMA-2025 merge from uima-as-distr

Added:
    uima/uima-as/trunk/uima-as/README   (with props)
    uima/uima-as/trunk/uima-as/RELEASE_NOTES.html   (with props)
Modified:
    uima/uima-as/trunk/uima-as/pom.xml

Added: uima/uima-as/trunk/uima-as/README
URL: 
http://svn.apache.org/viewvc/uima/uima-as/trunk/uima-as/README?rev=1064728&view=auto
==============================================================================
--- uima/uima-as/trunk/uima-as/README (added)
+++ uima/uima-as/trunk/uima-as/README Fri Jan 28 15:24:49 2011
@@ -0,0 +1,444 @@
+     Apache UIMA Asynchronous Scaleout (UIMA-AS) Version 2.3.1 README
+     ----------------------------------------------------------------
+     
+0. Building from the Source Distribution
+========================================
+     
+We use Maven 3.0 for building; download this if needed, 
+and set the environment variable MAVEN_OPTS to -Xmx800m -XX:MaxPerSize-256m.
+
+Then do the build by going into the .../uima-as directory, and issuing the 
command
+   mvn clean install.
+   
+This builds everything except the ...source-release.zip file. If you want that,
+change the command to 
+
+   mvn clean install -Papache-release
+   
+Look for the result in the two artifacts: 
+   ../uima-as/target/uima-as-[version]-source-release.zip if run with 
-Papache-release) and
+   ../uima-as-distr/target/uima-as-[version]-bin.zip (or  ...tar.gz) 
+
+For more details, please see http://uima.apache.org/building-uima.html   
+
+1. What's New in 2.3.1
+====================== 
+  - UIMA-AS repackaged - includes base UIMA
+  - New ActiveMQ version - includes ActiveMQ 5.4.1 with its dependencies
+  - Each thread uses dedicated Serializer/Deserializer instance, removing a 
bottleneck 
+  - Many bug fixes 
+  - Multiple improvements to increase performance
+  - Improved error handling and stability
+  - Fixed CDE slow startup with an aggregate containing a remote delegate
+  - Improves and fixes bugs related to XMI delta serialization   
+  - Fixes a bug preventing shutdown of C++ services
+  - Improved debugging with optional dumping of JVM stack if process() takes 
too long
+  - Added detection of failed client before processing a CAS
+  - Fixed bugs in JMX Monitor integrated with UIMA AS service 
+  - Improved performance by increasing prefetch size on reply queue
+  - Fixed processParentLast logic
+  
+
+1.1 Contents of Apache UIMA-AS binary distribution
+--------------------------------------------------
+
+The Apache UIMA-AS binary distribution includes
+  - Apache UIMA Java SDK 
+  - Apache UIMA Asynchronous Scaleout extensions
+  - Saxon
+  - Apache ActiveMQ
+  - Spring Framework
+
+It includes the base UIMA binary distribution which it depends on.
+
+UIMA-AS components, in addition to those that come with base UIMA include:
+
+  shell scripts:
+  --------------
+
+  bin/startBroker.sh/bat: starts the ActiveMQ broker, which must be running 
before
+      UIMA AS services can be deployed.
+  bin/deployAsyncService.sh/bat: deploys an AnalysisEngine as a UIMA-AS
+      service.  Takes one or more UIMA-AS Deployment Descriptors as arguments.
+  bin/runRemoteAsyncAE.sh/bat: Calls a UIMA-AS service. Takes arguments 
specifying the
+      location of the service, and an optional CollectionReader descriptor 
file used to
+      obtain the CASes to be processed by the service.
+
+  documentation:
+  --------------
+ 
+  docs/pdf/uima_async_scaleout.pdf: UIMA-AS documentation, including the 
specification
+      for the deployment descriptor file syntax.
+
+  examples:
+  ---------
+ 
+  examples/deploy/as/...  (Sample Deployment Descriptors)
+    Deploy_RoomNumberAnnotator.xml: Deploys Room Number Annotator Primitive AE
+    Deploy_MeetingDetectorTAE.xml: Deploys Meeting Detector Aggregate AE with 
all
+        delegates in the same JVM.
+    Deploy_MeetingDetectorTAE_Whiteboard.xml: Deploys Meeting Detector 
Aggregate AE
+        using the whiteboard Flow Controller.
+    Deploy_MeetingDetectorTAE_RemoteRoomNumber.xml: Deploys Meeting Detector 
Aggregate AE
+        that uses remotely deployed RoomNumberAnnotator.
+    Deploy_MeetingDetectorTAE_3MeetingAnnotator.xml: Deploys Meeting Detector 
Aggregate AE
+        with three instances of the MeetingAnnotator component.
+    Deploy_MeetingDetectorTAE_Sync_3Instances.xml: Deploys 3 instances of the
+        Meeting Detector as a Synchronous Aggregate (meaning the delegate AEs 
do not each
+        get their own input queue).
+    Deploy_MeetingAnnotator.xml: Deploys C++ Meeting Annotator. Note: requires
+        installation of uimacpp SDK into $UIMA_HOME.
+
+    MeetingFinderAggregate.xml: Aggregate descriptor that use the same 
components as the
+        CPE examples MeetingFinderCPE* in base UIMA.
+    Deploy_MeetingFinder.xml: Deploys MeetingFinderAggregate illustrating 
scalability and
+        error handling similar to the CPM examples; see Section 4 on migration 
below.
+
+  descriptors:
+  ------------
+ 
+  descriptors/as/...  (Other Sample Descriptors for use with UIMA AS)
+    MeetingDetectorAsyncAE.xml:  Specifier that can be used to call a UIMA AS
+        Service from an existing UIMA application; see Section 2.5 below.
+
+
+2. Installation and Setup
+=========================
+
+2.1 Supported Platforms
+-----------------------
+
+UIMA AS Requires Java 5 or later.  It has been tested with Sun Java 5 on 
Windows XP and Linux,
+and with IBM Java 6 on Linux.  Other platforms and Java (5+) implementations 
should work, 
+but have not been significantly tested.
+
+2.2. Environment Variables
+--------------------------
+
+After you have unpacked the UIMA AS distribution, you must perform the 
following
+environment variable settings (the same as for normal Apache UIMA setup):
+
+    * Set JAVA_HOME to the directory of your JRE installation you would like 
to use for UIMA.
+    * Set UIMA_HOME to the apache-uima-as directory of your unpacked Apache 
UIMA distribution
+    * Append UIMA_HOME/bin to your PATH
+
+    Note: The Mac OS X operating system has special procedures for setting up 
global environment
+    variables; see http://developer.apple.com/qa/qa2001/qa1067.html for how to 
do this.
+
+2.3 Running the Setup Script
+----------------------------
+
+You must run the script UIMA_HOME/bin/adjustExamplePaths.bat (or .sh).  This 
updates
+paths in the examples based on the actual UIMA_HOME directory path.
+
+2.4 Setting up Eclipse
+----------------------
+
+Eclipse users should install the UIMA Eclipse Plugins and UIMA Examples 
Project using the 
+procedure described in Chapter 3 of the Apache UIMA Overview and Setup guide,
+which you can find online at http://uima.apache.org; click on Documentation ->
+HTML Online Version -> Overview and Setup -> 3. Eclipse IDE setup for UIMA. 
+
+Since UIMA AS requires Java 5, you must be sure to set up your uimaj-examples 
Eclipse
+project to use a version 5 (or later) JRE, and you must set your compiler 
compliance level to 5.0.  To do
+this go to Window->Preferences and navigate to the Java->Compiler page.  
Remember to 
+run the base Eclipse using Java 5 (or later), as well.
+
+
+3. Getting Started
+==================
+
+3.1 Starting the ActiveMQ Broker
+--------------------------------
+
+UIMA AS services require an ActiveMQ broker to be available with which to 
create/register 
+the service request queue. If no broker is available, start a new broker on 
the same machine 
+the services will run on or another machine; this is done by first setting an 
env parameter
+ACTIVEMQ_BASE pointing at a writable directory, or simply by cd'ing to a 
writable directory,
+and running:
+
+   startBroker.sh/bat
+
+The first time run this script will create a new directory $ACTIVEMQ_BASE/amq 
(or ./amq)
+and default configuration files will be copied there. The configuration files 
can then be 
+customized to modify broker behavior for subsequent startups.
+
+Note: only one broker can be started at a time on the same machine with the 
same
+      configuration file, or on different machines from the same writable 
directory.
+
+When the broker starts it will print a message such as:
+
+  INFO TransportServerThreadSupport - Listening for connections at: 
tcp://yourHostname:61616
+
+Note this URL since you will need it to run services and clients.
+
+The tcp listening port must be exposed to any clients or services using the 
broker.
+To connect to a broker running behind a firewall using HTTP tunneling, see 
section 3.6 below.
+
+3.2 Deploying an Analysis Engine as a UIMA AS Asynchronous Service
+------------------------------------------------------------------
+
+a. Create a Deployment Descriptor.
+  Examples can be found in the examples/deploy/as directory,
+  and the syntax is documented in docs/pdf/uima_async_scaleout.pdf.
+  
+  Note: One of the things that the deployment descriptor may contain is a 
broker placeholder with 
+  this syntax: ${defaultBrokerURL}. The placeholder is replaced at runtime 
with an actual broker
+  URL. The value for the placeholder comes from System properties. The 
brokerURL attribute of <inputQueue ...>
+  element is optional. If not present, a default of tcp://localhost:61616 will 
be used.
+
+  The examples assume the broker is listening on tcp://localhost:61616.
+
+b. Run the command:
+
+     deployAsyncService.sh/cmd [testDD.xml] [-brokerURL url]
+
+  The argument to the command is the deployment descriptor you created in step 
(a). An optional argument
+  -brokerURL specifies a URL of the broker that the service will use to create 
connections to queues. This
+  argument takes effect only if your deployment descriptor does not explicitly 
name the broker URL in the 
+  <inputQueue ...> xml element *or* the brokerURL attribute is set to a 
placeholder ${defaultBrokerURL}. 
+  Omitting brokerURL or using a placeholder is a way to keep your deployment 
descriptors portable. You don't 
+  need to edit your deployment descriptors when switching brokers.
+
+  Note: If you use import by name in your deployment descriptor, UIMA AS 
searches the CLASSPATH
+  as well as directories on UIMA_DATAPATH to resolve the import.
+ 
+  Note: deployAsyncService.sh/cmd scripts launch UimaBootstrap main program 
which loads UIMA jars
+  dynamically from UIMA_HOME/lib, UIMA_HOME/apache-activemq-5.4.1, 
UIMA_HOME/apache-activemq-5.4.1/lib,
+  and UIMA_HOME/apache-activemq-5.4.1/lib/optional directories. If you want to 
use a different
+  version of ActiveMQ, set the ACTIVEMQ_HOME environment variable to the 
location of 
+  ActiveMQ you intend to use. When using different version of ActiveMQ ( older 
than version 5.4), start
+  the broker using a startup script located in ACTIVEMQ_HOME/bin directory 
instead of 
+  UIMA_HOME/bin/startBroker.[cmd|sh] script provided in this release. This is 
due to the fact that the 
+  5.4 branch of ActiveMQ xml schema has changed. The activemq_nojournal.xml 
provided in this release two
+  optimizations: schedulerSupport=false to disable broker message scheduler, 
and producerFlowControl="false" 
+  to turn off producer flow control.
+  
+  Also, if you want to deploy your own annotator that is 
+  installed in a different directory than UIMA_HOME/lib, set the 
UIMA_CLASSPATH 
+  environment variable to point to one or more Classpath entries;  these 
entries can either be
+  directories of Java class files, Jar files, or directories of Jar files (in 
which case, all the 
+  Jars are added in an arbitrary order). Separate multiple entries using 
File.pathSeparator.    
+  
+  Note: Both UIMA AS client and UIMA AS service by default add a time-to-live 
(TTL) to 
+  every request message. This enables expiration of messages that are not 
consumed. 
+  Currently, the UIMA AS client multiplies the Process Timeout value by 10 and 
uses
+  this as TTL. The UIMA AS service sets TTL to the Timeout value multiplied by 
the number 
+  of outstanding requests. To disable TTL, add a system property -DNoTTL. A 
convenient 
+  way to set this parameter is by adding -DNoTTL to the env parameter 
UIMA_JVM_OPTS 
+  before running deployAsyncService and/or runRemoteAsyncAE.  
+  
+
+3.3 Calling a UIMA AS Asynchronous Service
+------------------------------------------
+
+To test a remote UIMA service you can use the script:
+  runRemoteAsyncAE.sh/cmd brokerUrl endpoint
+
+  This connects to a remote AE at specified brokerUrl and endpoint (which must 
match
+  the inputQueue endpoint in the remote AE service's deployment descriptor).
+
+  A subset of the optional arguments to runRemoteAsyncAE are:
+    -c  Specifies a CollectionReader descriptor.  The client will obtain CASes 
from the
+        CollectionReader and send them to the service for processing.  If this 
option
+        is omitted, one empty CAS will be sent to the service (useful for 
services
+        containing a CAS Multiplier acting as a collection reader).
+
+    -d  Specifies a deployment descriptor. The specified service will be 
deployed before processing
+        begins, and the service will be undeployed after processing completes. 
+        Multiple -d entries can be given.
+
+    -o  Specifies an Output Directory.  All CASes received by the client's
+        CallbackListener will be serialized to XMI in the specified OutputDir.
+        If omitted, no XMI files will be output.
+        
+  The full set of arguments are documented if you type the command with no 
arguments.
+
+3.4 Quick Test of an async service
+----------------------------------
+
+Start two terminal windows, each with an environments setup as described in 
section 2.2.
+
+  * In the first terminal window start the broker (as described in section 
3.1),
+    by running the commands:
+      cd some-writable-directory     
+      startBroker.sh/bat
+
+  * In the second terminal window, deploy a sample service and send it some 
CASes:
+      cd $UIMA_HOME/examples/deploy/as
+      runRemoteAsyncAE.sh/cmd tcp://localhost:61616 MeetingDetectorTaeQueue \
+         -d Deploy_MeetingDetectorTAE.xml \
+         -c 
$UIMA_HOME/examples/descriptors/collection_reader/FileSystemCollectionReader.xml
+
+    If you get an UnsupportedClassVersionError, Java 5 is probably not being 
used.
+    If the driver fails to find the input data, adjustExamplePaths was 
probably not run.
+
+3.5 Calling a UIMA AS Asynchronous Service from an Existing UIMA Application
+
+You can also call a UIMA AS Service from the DocumentAnalyzer or any other UIMA
+application using a new JMS client Service Descriptor
+(see section 1.7 in the UIMA Asynchronous Scaleout documentation). 
+However, note that this is a synchronous interface, that is, it will process 
only 
+one CAS at a time, so it will not take advantage of the scalability that UIMA 
AS 
+provides.  To process more than one CAS at a time, you can use the 
Asynchronous 
+UIMA AS Client as described in section 3.3, or write your own application 
using the
+UIMA AS Client APIs.
+
+An example JMS client service descriptor is provided in
+
+  examples/descriptors/as/MeetingDetectorAsyncAE.xml
+
+The JMS service makes use of the customResourceSpecifier capability in Apache 
UIMA.
+For more information on the customResourceSpecifier see the "Custom Resource 
Specifiers"
+section in the Apache UIMA Reference manual.
+
+3.6 Firewalls between clients and services
+------------------------------------------
+
+A service running behind a firewall can be accessed as long as its input queue
+is on a broker that is accessable. For example, the service can register with a
+public broker running outside the firewall. Alternatively the broker may be 
configured 
+to tunnel over HTTP. For details see 
http://activemq.apache.org/configuring-transports.html
+
+Note: The ActiveMQ 5.4.1 jars distributed with this UIMA AS release include 
bug fixes described in 
+      http://issues.apache.org/activemq/browse/AMQ-1308. Previous releases of 
UIMA AS included 
+      custom ActiveMQ 4.1.1 jars (which we have patched) to remedy the 
problems. When using 
+      ActiveMQ HTTP connector, make sure that both a client and a service use 
either ActiveMQ 4.1.1 
+      or ActivemMQ 5.4.1+ jars. 
+       
+     
+3.7 Monitoring a broker and its queues
+--------------------------------------
+
+When the broker starts it will print a message such as:
+  INFO  ManagementContext  - JMX consoles can connect to 
service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi
+
+Connect a JMX console to this service with:
+         $JAVA_HOME/bin/jconsole 
service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi
+         
+(Note: jconsole is available in Java SDK (not JRE) distributions from Sun)     
    
+If your console is not on the same machine as the broker, replace localhost by
+the name of the broker's machine.  The default ports for the broker (61616) 
and 
+for the JMX server (1099) can be overridden in the broker configuration file 
+created when the broker is first started. For more details see 
+http://activemq.apache.org/jmx.html
+
+3.8 Monitoring UIMA AS service
+------------------------------
+
+UIMA AS service monitoring is available via JMX and jConsole. To enable this, 
please set the following 
+before starting a service:
+
+set UIMA_JVM_OPTS=-Dcom.sun.management.jmxremote 
-Dcom.sun.management.jmxremote.port=<uniquePortNumber, e.g. 8009> 
+                  -Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false
+
+Connect a jConsole to this JMX service as described in 3.7 above using the 
appropriate port, e.g.
+
+         $JAVA_HOME/bin/jconsole 
service:jmx:rmi:///jndi/rmi://localhost:8009/jmxrmi
+
+Under the MBeans tab, expand org.apache.uima in the left panel to view UIMA 
components enabled for JMX monitoring.
+
+3.9 Stopping UIMA AS service
+----------------------------
+
+A service can be stopped from a command line or remotely using jConsole and 
JMX. When the service is
+launched it displays a prompt on stdout:
+
+    Enter 'q' to quiesce and stop the service or 's' to stop it now: 
+
+It reads stdin expecting either 'q' or 's', ignoring all other characters. 
When 'q' is typed, the
+service will quiesce and stop. As part of this, the service closes its input 
queue and waits until all CASes 
+still "in-play" are finished. When the input CAS is returned the service 
stops. When 's' is typed the service
+closes its input queue and immediately releases all CASes being processed and 
stops.
+
+To stop UIMA AS process remotely or if the process runs in a background use 
jConsole and JMX. Using approach 
+described in 3.8 above launch jConsole. Once the connection is created, in the 
left pane open:
+
+org.apache.uima
+    ee.jms.service
+        <Your Annotator Name> Uima EE Service
+              Controller
+                   Operations
+                           
+Here you will find two buttons labeled:
+          CompleteProcessingAndStop
+          StopNow
+
+CompleteProcessingAndStop will initiate quiesce while StopNow will initiate a 
hard stop.
+
+4. Migration from CPM to UIMA-AS
+================================
+
+Migrating a collection processing engine from the CPM to UIMA-AS is 
straightforward.
+
+First, migrate the CPE descriptor to a standard UIMA aggregate descriptor:  
+create a UIMA aggregate that includes all the components specified in the CPE 
descriptor. 
+Transfer any parameter overrides in the CPE descriptor to the aggregate 
descriptor.
+Note that the aggreate descriptor must set <multipleDeploymentAllowed> to 
false 
+to be consistent with collection reader and CAS consumer delegates.
+
+Second, test this aggregate descriptor by instantiating the aggregate and 
sending it a single CAS.
+The contents of the CAS are not important; its purpose is to start the 
collection reader delegate
+which will then create the actual CASes to be processed by the other aggregate 
components.
+The CAS Visual Debugger, CVD, is a useful tool for doing this test.
+
+Next, create a UIMA-AS deployment descriptor that specifies desired scaleout 
and error handling.
+Vinci services are still supported, although it is recommended to replace them 
with UIMA-AS
+services to enable more efficient load balancing and greater scaleout 
capability.
+
+An example of this kind of migration is embodied by the sample descriptors:
+  Original:  
+     
$UIMA_HOME/examples/descriptors/collection_processing_engine/MeetingFinderCPE_Integrated.xml
+  Migrated:
+     $UIMA_HOME/examples/deploy/as/MeetingFinderAggregate.xml
+     $UIMA_HOME/examples/deploy/as/Deploy_MeetingFinder.xml
+
+
+5. Known problems/limitations with Release 2.3.1
+================================================
+
+  1. No automatic refresh for broken connections with temp reply queues.
+  
+  2. When connecting to an AMQ broker behind a firewall, avoid using the 
maxInactivityDuration=0 
+     decoration on the brokerURL (see: 
http://activemq.apache.org/configuring-wire-formats.html)
+     as it turns off AMQ 'keep alive' messaging. Without these, a firewall may 
assume a connection
+     has become stale and close its ports. 
+
+  3. UIMA AS does not (yet) support PEAR specifiers. The deployment descriptor 
should not point to PEAR file. 
+     Instead, PEARs must be unzipped and classpath adjusted to point to 
required resources.
+
+  4. To monitor multiple UIMA AS services on the same machine, each must be 
assigned a unique 
+     JMX port (see section 3.8).
+
+  5. Handling of timeouts on Cas Multiplier delegates not working 
+  
+For up-to-date information on UIMA-AS issues, see our issue tracker:
+http://issues.apache.org/jira/secure/BrowseProject.jspa?id=12310570
+
+Crypto Notice
+-------------
+
+   This distribution includes cryptographic software.  The country in 
+   which you currently reside may have restrictions on the import, 
+   possession, use, and/or re-export to another country, of 
+   encryption software.  BEFORE using any encryption software, please 
+   check your country's laws, regulations and policies concerning the
+   import, possession, or use, and re-export of encryption software, to 
+   see if this is permitted.  See <http://www.wassenaar.org/> for more
+   information.
+
+   The U.S. Government Department of Commerce, Bureau of Industry and
+   Security (BIS), has classified this software as Export Commodity 
+   Control Number (ECCN) 5D002.C.1, which includes information security
+   software using or performing cryptographic functions with asymmetric
+   algorithms.  The form and manner of this Apache Software Foundation
+   distribution makes it eligible for export under the License Exception
+   ENC Technology Software Unrestricted (TSU) exception (see the BIS 
+   Export Administration Regulations, Section 740.13) for both object 
+   code and source code.
+
+   The following provides more details on the included cryptographic
+   software:
+   
+   This distribution includes portions of Apache ActiveMQ, which, in
+   turn, is classified as being controlled under ECCN 5D002.

Propchange: uima/uima-as/trunk/uima-as/README
------------------------------------------------------------------------------
    svn:eol-style = native

Added: uima/uima-as/trunk/uima-as/RELEASE_NOTES.html
URL: 
http://svn.apache.org/viewvc/uima/uima-as/trunk/uima-as/RELEASE_NOTES.html?rev=1064728&view=auto
==============================================================================
--- uima/uima-as/trunk/uima-as/RELEASE_NOTES.html (added)
+++ uima/uima-as/trunk/uima-as/RELEASE_NOTES.html Fri Jan 28 15:24:49 2011
@@ -0,0 +1,81 @@
+<html>
+  <!--
+   ***************************************************************
+   * Licensed to the Apache Software Foundation (ASF) under one
+   * or more contributor license agreements.  See the NOTICE file
+   * distributed with this work for additional information
+   * regarding copyright ownership.  The ASF licenses this file
+   * to you under the Apache License, Version 2.0 (the
+   * "License"); you may not use this file except in compliance
+   * with the License.  You may obtain a copy of the License at
+   *
+   *   http://www.apache.org/licenses/LICENSE-2.0
+   * 
+   * Unless required by applicable law or agreed to in writing,
+   * software distributed under the License is distributed on an
+   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+   * KIND, either express or implied.  See the License for the
+   * specific language governing permissions and limitations
+   * under the License.
+   ***************************************************************
+   -->
+<head>
+  <title>Apache UIMA Asynchronous Scaleout v2.3.1 Release Notes</title>
+</head>
+<body>
+<h1>Apache UIMA-AS (Unstructured Information Management Architecture - 
Asynchronous Scaleout) v2.3.1 Release Notes</h1>
+
+<h2>Contents</h2>
+<p>
+<a href="#what.is.uima-as">1. What is UIMA-AS?</a><br/>
+<a href="#major.changes">2. Major Changes in this Release</a><br/>
+<a href="#get.involved">3. How to Get Involved</a><br/>
+<a href="#report.issues">4. How to Report Issues</a><br/>
+<a href="#list.issues">5. List of JIRA Issues Fixed in this Release</a>
+</p>  
+   
+<h2><a name="what.is.uima-as">1. What is UIMA-AS?</a></h2>
+
+     <p>
+                       UIMA Asynchronous Scaleout (AS) is an augmented version 
of Apache UIMA that 
+                       additionally provides a set of capabilities
+for achieving flexible scaleout.  It is a second generation design, replacing 
the
+CPM and Vinci Services. The CPM and Vinci are still available and are not 
being deprecated, 
+but new designs are encouraged to use UIMA-AS for scalability, and current 
designs 
+reaching limitations may want to move to UIMA-AS.
+
+                       </p>
+      <p>
+                               UIMA-AS is integrated with the new flow 
controller architecture, and can be applied to
+both primitive and aggregate analysis engines.  It fully supports CAS 
Multipliers.
+                       </p>
+
+<h2><a name="major.changes">2. Major Changes in this Release</a></h2>
+<p>
+Please see the <a href="README">README</a> for this information. 
+</p> 
+  
+  
+<h2><a name="get.involved">3. How to Get Involved</a></h2>
+<p>
+The Apache UIMA project really needs and appreciates any contributions, 
+including documentation help, source code and feedback.  If you are interested
+in contributing, please visit 
+<a href="http://uima.apache.org/get-involved.html";>
+  http://uima.apache.org/get-involved.html</a>.
+</p>
+  
+<h2><a name="report.issues">4. How to Report Issues</a></h2>
+<p>
+The Apache UIMA project uses JIRA for issue tracking.  Please report any 
+issues you find at 
+<a 
href="http://issues.apache.org/jira/browse/uima";>http://issues.apache.org/jira/browse/uima</a>
+</p>
+  
+<h2><a name="list.issues">5. List of JIRA Issues Fixed in this Release</a></h2>
+
+Click <a href="issuesFixed/jira-report.html">issuesFixed/jira-report.hmtl</a> 
for the list of 
+issues fixed in this release.
+
+</body>
+</html>
\ No newline at end of file

Propchange: uima/uima-as/trunk/uima-as/RELEASE_NOTES.html
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: uima/uima-as/trunk/uima-as/pom.xml
URL: 
http://svn.apache.org/viewvc/uima/uima-as/trunk/uima-as/pom.xml?rev=1064728&r1=1064727&r2=1064728&view=diff
==============================================================================
--- uima/uima-as/trunk/uima-as/pom.xml (original)
+++ uima/uima-as/trunk/uima-as/pom.xml Fri Jan 28 15:24:49 2011
@@ -60,9 +60,419 @@
   </scm>
 
   <properties>
+    <jiraVersion>12315335</jiraVersion> <!-- for 2.3.1AS -->  
     <uimaScmProject>${project.artifactId}</uimaScmProject>
+    <assemblyFinalName>uima-as-${project.version}</assemblyFinalName> 
   </properties>
 
+  <!-- dependencies used during assembly -->
+       <dependencies>
+    <!-- uima base -->
+    <dependency>
+      <groupId>org.apache.uima</groupId>
+      <artifactId>uimaj-distr</artifactId>
+      <type>zip</type>
+      <classifier>bin</classifier>
+      <version>${uimajDependencyVersion}</version>
+    </dependency>
+    
+    <!-- uima-as -->
+    <dependency>
+      <groupId>org.apache.uima</groupId>
+      <artifactId>uimaj-as-core</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.uima</groupId>
+      <artifactId>uimaj-as-activemq</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.uima</groupId>
+      <artifactId>uimaj-as-jms</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.uima</groupId>
+      <artifactId>uimaj-as-camel</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.uima</groupId>
+      <artifactId>uimaj-ep-deployeditor</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.uima</groupId>
+      <artifactId>uimaj-ep-runtime-deployeditor</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.uima</groupId>
+      <artifactId>uimaj-as-osgi-runtime</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    
+    <dependency>
+      <groupId>org.apache.uima</groupId>
+      <artifactId>uimaj-test-util</artifactId>
+      <version>${uimajDependencyVersion}</version>
+    </dependency>
+    <!--
+      commons stuff
+      -->
+    <dependency>
+      <groupId>commons-collections</groupId>
+      <artifactId>commons-collections</artifactId>
+      <version>3.2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>commons-pool</groupId>
+      <artifactId>commons-pool</artifactId>
+      <version>1.5.4</version>
+    </dependency>
+    <dependency>
+      <groupId>commons-logging</groupId>
+      <artifactId>commons-logging</artifactId>
+      <version>1.1.1</version>
+    </dependency> 
+
+    <dependency>
+      <groupId>commons-codec</groupId>
+      <artifactId>commons-codec</artifactId>
+      <version>1.2</version>
+    </dependency> 
+    
+    <dependency>
+      <groupId>commons-httpclient</groupId>
+      <artifactId>commons-httpclient</artifactId>
+      <version>3.1</version>
+    </dependency> 
+
+
+
+    <!--  
+     Spring Framework Dependencies
+    -->
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-core</artifactId>
+      <version>3.0.3.RELEASE</version>
+    </dependency>
+     
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-asm</artifactId>
+      <version>3.0.3.RELEASE</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-beans</artifactId>
+      <version>3.0.3.RELEASE</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-context</artifactId>
+      <version>3.0.3.RELEASE</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-expression</artifactId>
+      <version>3.0.3.RELEASE</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-tx</artifactId>
+      <version>3.0.3.RELEASE</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-jms</artifactId>
+      <version>3.0.3.RELEASE</version>
+    </dependency>
+
+
+       <!--
+               Active MQ Stuff
+       -->
+    <dependency>
+      <groupId>org.apache.activemq</groupId>
+      <artifactId>activemq-all</artifactId>
+      <version>5.4.1</version>
+    </dependency> 
+
+    <dependency>
+      <groupId>org.apache.activemq</groupId>
+      <artifactId>activemq-jaas</artifactId>
+      <version>5.4.1</version>
+    </dependency>
+  
+    <dependency>
+      <groupId>org.apache.activemq</groupId>
+      <artifactId>activemq-web</artifactId>
+      <version>5.4.1</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.apache.activemq</groupId>
+      <artifactId>activemq-spring</artifactId>
+      <version>5.4.1</version>
+    </dependency> 
+
+    <dependency>
+      <groupId>org.apache.activemq</groupId>
+      <artifactId>activemq-optional</artifactId>
+      <version>5.4.1</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.apache.activemq</groupId>
+      <artifactId>kahadb</artifactId>
+      <version>5.4.1</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.apache.geronimo.specs</groupId>
+      <artifactId>geronimo-jms_1.1_spec</artifactId>
+      <version>1.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.geronimo.specs</groupId>
+      <artifactId>geronimo-j2ee-management_1.1_spec</artifactId>
+      <version>1.0.1</version>
+    </dependency>
+
+
+    <dependency>
+      <groupId>org.apache.geronimo.specs</groupId>
+      <artifactId>geronimo-servlet_2.5_spec</artifactId>
+      <version>1.2</version>
+    </dependency>
+
+       <!--
+          Jetty
+       -->
+       <dependency>
+      <groupId>org.eclipse.jetty.aggregate</groupId>
+      <artifactId>jetty-all-server</artifactId>
+      <version>7.0.1.v20091125</version>
+    </dependency>
+       
+    <dependency>
+      <groupId>xmlpull</groupId>
+      <artifactId>xmlpull</artifactId>
+      <version>1.1.3.4d_b4_min</version>
+    </dependency> 
+  
+    <dependency>
+      <groupId>com.thoughtworks.xstream</groupId>
+      <artifactId>xstream</artifactId>
+      <version>1.3.1</version>
+    </dependency>
+
+    <!-- lib/optional -->
+
+    <dependency>
+      <groupId>commons-beanutils</groupId>
+      <artifactId>commons-beanutils</artifactId>
+      <version>1.6.1</version>
+    </dependency>
+      
+    <dependency>
+      <groupId>commons-dbcp</groupId>
+      <artifactId>commons-dbcp</artifactId>
+      <version>1.2.2</version>
+    </dependency>
+    
+    <dependency>
+      <groupId>org.apache.geronimo.specs</groupId>
+      <artifactId>geronimo-j2ee-connector_1.5_spec</artifactId>
+      <version>2.0.0</version>
+    </dependency>
+  
+    <dependency>
+      <groupId>log4j</groupId>
+      <artifactId>log4j</artifactId>
+      <version>1.2.14</version>
+    </dependency>
+  
+    <dependency>
+      <groupId>org.apache.xbean</groupId>
+      <artifactId>xbean-spring</artifactId>
+      <version>3.7</version>
+    </dependency>
+    
+       </dependencies>
+    
+       <build>
+    <resources />
+               <plugins>
+    
+      <!-- UIMA-AS includes the base UIMA binary distribution
+           We get an unzipped version of that and unpack it into
+           target/uimaj -->
+      
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-dependency-plugin</artifactId>
+        <executions>
+          <execution>
+            <!-- use the dependency:unpack goal to unpack the 
+                 base binary uimaj sdk distribution -->
+            <id>unpackUimajBin</id>
+            <phase>prepare-package</phase>
+            <goals><goal>unpack</goal></goals>
+            <configuration>
+              <overWriteIfNewer>true</overWriteIfNewer>
+              <artifactItems>
+                <artifactItem>
+                  <groupId>org.apache.uima</groupId>
+                  <artifactId>uimaj-distr</artifactId>
+                  <version>${uimajDependencyVersion}</version>
+                  <type>zip</type>
+                  <classifier>bin</classifier>
+                  
<outputDirectory>${project.build.directory}/uimaj</outputDirectory>
+                </artifactItem>
+              </artifactItems>
+            </configuration>
+          </execution>
+        </executions>        
+      </plugin>
+      
+      <!-- This java doc config is for building the ones distributed with the 
bin packaging, and also 
+           posted on our website.
+       -->     
+                       <plugin>
+                               <artifactId>maven-javadoc-plugin</artifactId>
+                               <executions>
+                                       <execution>
+                                               <id>javadocs-distr</id>
+                                               <phase>prepare-package</phase> 
<!-- must be before assembly -->
+            <!--phase>deploy</phase-->   <!-- comment above and uncomment to 
disable javadocs, for testing/experimentation, with assembly:assembly-->
+                                               <goals>
+                                                       <goal>javadoc</goal>
+                                               </goals>
+                                               <configuration>
+              <quiet>true</quiet>
+                                                       <groups>
+                                                               <group>
+                                                                       
<title>Packages</title>
+                                                                       
<packages>*</packages>
+                                                               </group>
+                                                       </groups>
+              <!--verbose>true</verbose-->
+                                                       <sourcepath>
+                
../uimaj-as-core/src/main/java:../uimaj-as-activemq/src/main/java:../uimaj-as-camel/src/main/java:../uima-as-jms/src/main/java
+              </sourcepath>
+              <subpackages>org.apache.uima</subpackages>
+                                                       <excludePackageNames>
+                *.uima.aae:
+                *.aae.controller:
+                *.aae.deploymentDescriptor:
+                *.aae.error:
+                *.aae.error.handler:
+                *.aae.handler:
+                *.aae.handler.input:
+                *.aae.jmx:
+                *.aae.message:
+                *.aae.monitor:
+                *.aae.monitor.statistics
+              </excludePackageNames>
+                                                       <!-- add a few classes 
in impl packages that are directly used by user code -->
+              <additionalparam>
+                
${basedir}/../uimaj-as-core/src/main/java/org/apache/uima/aae/jmx/monitor/BasicUimaJmxMonitorListener.java
+                
${basedir}/../uimaj-as-core/src/main/java/org/apache/uima/aae/jmx/monitor/JmxMonitorListener.java
+                
${basedir}/../uimaj-as-core/src/main/java/org/apache/uima/aae/jmx/monitor/ServiceMetrics.java
+                
${basedir}/../uimaj-as-core/src/main/java/org/apache/uima/aae/jmx/monitor/SingleLineUimaJmxMonitorListener.java
+                
${basedir}/../uimaj-as-core/src/main/java/org/apache/uima/aae/client/UimaAsynchronousEngine.java
+                
${basedir}/../uimaj-as-core/src/main/java/org/apache/uima/aae/client/UimaASStatusCallbackListener.java
+                
${basedir}/../uimaj-as-core/src/main/java/org/apache/uima/aae/client/UimaASProcessStatus.java
                                                                                
     
+                
${basedir}/../uimaj-as-core/src/main/java/org/apache/uima/aae/error/ErrorResult.java
+                
${basedir}/../uimaj-as-core/src/main/java/org/apache/uima/aae/error/ErrorResultComponentPath.java
+                
${basedir}/../uimaj-as-core/src/main/java/org/apache/uima/aae/error/ErrorResultTDs.java
+              </additionalparam>
+                                                       <doctitle>Apache UIMA 
Async Scaleout Java SDK ${project.version} User-Level API 
Documentation</doctitle>
+                                                       <windowtitle>Apache 
UIMA-AS Java SDK ${project.version} User-Level API Documentation</windowtitle>
+                                               </configuration>
+                                       </execution>
+                               </executions>
+
+                       </plugin>
+
+      <!-- https://issues.apache.org/jira/browse/UIMA-2008 -->
+      <!-- no maven deployment of this project's artifacts -->
+      <!-- binary build artifact deployed from apache mirror system after 
release -->
+      <plugin>
+        <artifactId>maven-deploy-plugin</artifactId>      
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+      <plugin>
+        <artifactId>maven-antrun-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>generate checksums for binary artifacts</id>
+            <goals><goal>run</goal></goals>
+            <phase>verify</phase>
+            <configuration>
+              <target>
+                <checksum algorithm="sha1" format="MD5SUM">
+                  <fileset dir="${project.build.directory}">
+                    <include name="*.zip" />
+                    <include name="*.gz" />
+                  </fileset>
+                </checksum>
+                <checksum algorithm="md5" format="MD5SUM">
+                  <fileset dir="${project.build.directory}">
+                    <include name="*.zip" />
+                    <include name="*.gz" />
+                  </fileset>
+                </checksum>
+              </target>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+               
+    </plugins>
+    
+         <pluginManagement>
+      <plugins>
+       <plugin>
+               <!-- run Release Audit Tool (RAT) on src and bin distrs -->     
  
+               <groupId>org.apache.rat</groupId>
+               <artifactId>apache-rat-plugin</artifactId>
+               <executions>
+                       <execution>
+                       <id>default-cli</id>
+                       <configuration>
+                               <excludes>
+                                       
<exclude>src/test/resources/deploy/expected/*.*</exclude> <!-- test data -->
+                                       
<exclude>src/test/resources/deploy/expected/envVar/*.*</exclude> <!-- test data 
-->
+                                       
<exclude>src/main/examples/run_configuration/*.launch</exclude> <!-- eclipse 
launch configurations -->
+                                       <exclude>release.properties</exclude>
+                                       <exclude>README*</exclude>
+                                       <exclude>RELEASE_NOTES*</exclude>
+                                       <exclude>issuesFixed/**</exclude>
+                                       
<exclude>src/main/resources/docbook-shared/titlepage/*.xsl</exclude>
+                                       
<exclude>marker-file-identifying-*</exclude>
+                                       <exclude>DEPENDENCIES</exclude>         
     
+                               </excludes>
+                       </configuration>
+                       </execution>
+               </executions>
+       </plugin>
+           </plugins>
+         </pluginManagement>   
+       </build>
+
+
   <profiles>
     <profile>
       <id>apache-release</id>
@@ -97,10 +507,34 @@
         </plugins>
       </build>
     </profile>
+    
+    
+    <profile>
+      <id>apache-release</id>
+      
+      <build>
+        <!-- Run jira report -->
+        <!-- depends on having -DjiraVersion set -->
+        <plugins>
+          <plugin>
+            <artifactId>maven-changes-plugin</artifactId>
+            <executions>
+              <execution>
+                <id>default-cli</id>
+                <configuration>
+                  <fixVersionIds>${jiraVersion}</fixVersionIds>
+                </configuration>
+              </execution>
+            </executions>  
+          </plugin>
+        </plugins>     
+      </build>
+    </profile>
+    
   </profiles>
 
   <modules>
     <module>../uima-as-parent</module>
-    <module>../uima-as-distr</module>
+    <module>../aggregate-uima-as</module>
   </modules>
 </project>


Reply via email to