blob: 28e39801b44df45056d8254a9bb5fe1420d38d08 [file] [log] [blame]
Apache Flex BlazeDS
==================
Apache Flex SDK is an application development framework for easily building
Flash-based applications for mobile devices, web browsers, and desktops.
Apache Flex BlazeDS is the server-based Java remoting and web messaging
technology that enables developers to easily connect to back-end distributed
data and push data in real-time to Adobe® Flex® and Adobe AIR™ applications
for more responsive rich Internet application (RIA) experiences..
Apache Flex BlazeDS 4.7 is the initial release of BlazeDS from the Apache
Software Foundation. Prior to this, releases were provided by Adobe
Systems Inc. This version adds new features and implements bug fixes
that were unavailable in previous versions. It is compatible with most code
written to target Adobe Flex 4.6.
For detailed information about Apache Flex please visit
http://flex.apache.org/
Apache Flex BlazeDS is a large project with many pieces. The software is
implemented partially in ActionScript and partially in Java.
Currently supported platforms include:
Microsoft Windows
Mac OS X
Apple iOS
Google Android
RIM BlackBerry
Linux
Apache Flex is the software evolution of the popular Adobe BlazeDS project.
The community surrounding Flex is vast, diverse, distributed globally, and
with all levels of proficiency in software development.
There has been more that 30,000 installs of Apache Flex. The Apache Flex web
site gets 3 quarters of a million page views a year and more than 250,000
unique visitors a year.
Getting the convenience packages for Apache Flex
================================================
TBD
Getting the latest sources via git
==================================
Getting the source code is the recommended way to get Apache Flex BlazeDS.
You can always checkout the latest source via git using the following
command:
git clone https://git-wip-us.apache.org/repos/asf/flex-blazeds.git blazeds
cd blazeds
git checkout develop
Apache Flex BlazeDS also requires source code from other Apache Flex git
repositories. To get the latest source via git for the Apache Flex SDK
use the following command:
git clone https://git-wip-us.apache.org/repos/asf/flex-sdk.git sdk
cd sdk
git checkout develop
Linux support is currently experimental and you may run into issues. Apache
Flex would like to see a fully supported Linux release, but we need support
from the community in order to do that. Please help out if you can.
For further information visit http://flex.apache.org/download-source.html
Building Apache Flex BlazeDS 4.7
================================
Apache Flex BlazeDS is a large project. It requires some build tools which must be
installed prior to building BlazeDS and it depends on some external software
which are downloaded as part of the build process. Some of these have
different licenses. See the Software Dependencies section for more
information on the external software dependencies.
From Apache's perspective, the Adobe Flash Player and Adobe AIR have
excluded licenses so they can not be bundled with the Apache Flex binaries.
They must be installed prior to building Apache Flex.
Linux support is currently experimental and while it is possible to compile
BlazeDS it has not been fully tested so you may run into issues.
Install Prerequisites
---------------------
Before building BlazeDS you must install the following software and set the
corresponding environment variables using absolute file paths. Relative
file paths will result in build errors.
The environment variables PLAYERGLOBAL_HOME, AIR_HOME, FLASHPLAYER_DEBUGGER,
FLEX_HOME can also be set in the property file
called env.properties. See the env-template.properties file for
instructions.
The Adobe Flash Player playerglobal.swc is needed to compile all the
ActionScript components. The Adobe Flash Player
content debugger is used by checkintests and other pieces of the test
subsystem to run compiled applications.
==================================================================================
SOFTWARE ENVIRONMENT VARIABLE (absolute paths)
==================================================================================
Java SDK 1.6 or greater (*1) JAVA_HOME
(for Java 1.7 see note at (*2))
Ant 1.7.1 or greater (*1) ANT_HOME
(for Java 1.7 see note at (*2))
Adobe AIR Integration Kit (*3) AIR_HOME
Adobe Flash Player Content Debugger (*4) FLASHPLAYER_DEBUGGER
Adobe Flash Player playerglobal swcs (*5) PLAYERGLOBAL_HOME
Apache Flex SDK (*6) FLEX_HOME
==================================================================================
*1) The bin directories for ANT_HOME and JAVA_HOME should be added to your
PATH.
On Windows, set PATH to
PATH=%PATH%;%ANT_HOME%\bin;%JAVA_HOME%\bin
On the Mac (bash), set PATH to
export PATH="$PATH:$ANT_HOME/bin:$JAVA_HOME/bin"
On Linux make sure you path include ANT_HOME and JAVA_HOME.
*2) If you are using Java SDK 1.7 or greater on a Mac you must use Ant 1.8
or greater. If you use Java 1.7 with Ant 1.7, ant reports the java
version as 1.6 so the JVM args for the data model (-d32/-d64) will not
be set correctly and you will get compile errors.
*3) The Adobe AIR integration kit for Windows can be downloaded from:
http://airdownload.adobe.com/air/win/download/13.0/AdobeAIRSDK.zip
The Adobe AIR integration kit for Mac can be downloaded from:
http://airdownload.adobe.com/air/mac/download/13.0/AdobeAIRSDK.tbz2
The Adobe AIR integration kit for Linux can be downloaded from:
http://airdownload.adobe.com/air/lin/download/2.6/AdobeAIRSDK.tbz2
This version of Apache Flex was certified for use with AIR 13.0, and
should be compatible with other versions of AIR newer than 3.1. However
it hasn't been fully tested on AIR 3.2, 3.3, 3.5, 3.6 or 3.7.
Download the AIR SDK for your platform and unzip it. Set AIR_HOME to the
absolute path of the AIR SDK directory.
*4) The Adobe Flash Player content debuggers can be found here:
http://www.adobe.com/support/flashplayer/downloads.html
This version of Apache Flex was certified for use with Adobe Flash
Player 11.1, and is compatible with versions 10.2 through 13.0. It has
been tested with versions 11.1, 11.7, 11.8, 11.9 and 12.0 on Windows
and Mac. It has been compiled against other Adobe Flash Player versions
but has not been fully tested. It has not been fully tested on Linux.
On Windows, set FLASHPLAYER_DEBUGGER to the absolute path including the
filename of the FlashPlayerDebugger.exe. Note the filename of flash
player debugger maybe different.
e.g. C:\MyPath\FlashPlayerDebugger.exe
On the Mac, set FLASHPLAYER_DEBUGGER to the absolute path of
Flash Player Debugger.app/Contents/MacOS/Flash Player Debugger
On Linux, set FLASHPLAYER_DEBUGGER to the absolute path of
flashplayerdebugger
*5) The Adobe Flash Player playerglobal.swc for 11.1 can be downloaded from:
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_1.swc
Use URL above to download playerglobal11_1.swc. Create the directory,
player/11.1 and copy playerglobal11_1.swc to
player/11.1/playerglobal.swc.
Set PLAYERGLOBAL_HOME to the absolute path of the player directory (not
including the version subdirectory). The target-player option controls
which PLAYERGLOBAL_HOME subdirectory is used.
Other more recent versions of Adobe Flash Player playerglobal.swc can be
downloaded from:
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_2.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_3.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_4.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_5.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_6.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_7.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_8.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_9.swc
http://download.macromedia.com/get/flashplayer/updaters/12/playerglobal12_0.swc
http://download.macromedia.com/get/flashplayer/updaters/13/playerglobal13_0.swc
These can be used with Apache Flex but not all have not been fully
tested.
*6) The Apache Flex SDK is required to build some of the ActionScript code.
Set FLEX_HOME to the absolute path of Apache Flex SDK.
FlashPlayer Configuration
-------------------------
For testing, the Adobe Flash Player's mm.cfg file must have the following
entries
ErrorReportingEnable=1
TraceOutputFileEnable=1
and a FlashPlayerTrust file must allow local SWFs to access local files.
Adobe Flash Player Version Support
----------------------------------
Apache Flex BlazeDS defaults to using the Adobe Flash Player 11.1. The SDK
can be used with Flash Player versions 10.2, 10.3, 11.0, 11.1, 11.2, 11.3,
11.4, 11.5, 11.6, 11.7, 11.8, 11.9, 12.0 and 13.0.
It is recommended that you update to the latest version of Adobe Flash
Player. Newer versions of the Adobe Flash player address security
vulnerabilities, fix bugs/issues, increase stability, and implement new
features.
To use the SDK for another version of the Adobe Flash Player either:
Change the flex-config.xml configuration file to specify another version of
the Adobe Flash Player.
OR
Change the playerglobal.version in the build.properties file to have a value
other than "11.1". For this change to take effect the SDK needs to be
recompiled. For example to compile against the latest version of the Adobe
Flash Player set the value of playerglobal.version to be "12.0" like so:
playerglobal.version = 13.0
OR
Compile the SDK with a -Dplayerglobal.version=<version> option, where
<version> is the Adobe Flash Player version to compile the SDK against.
Different versions of the Adobe Flash Player require different versions of
playerglobal.swc.
These can be found at:
http://download.macromedia.com/get/flashplayer/installers/archive/playerglobal/playerglobal10_2.swc
http://download.macromedia.com/get/flashplayer/installers/archive/playerglobal/playerglobal10_3.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_0.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_1.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_2.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_3.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_4.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_5.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_6.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_7.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_8.swc
http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_9.swc
http://download.macromedia.com/get/flashplayer/updaters/12/playerglobal12_0.swc
http://download.macromedia.com/get/flashplayer/updaters/13/playerglobal13_0.swc
Copy the target playerglobal.swc to the directory:
frameworks/libs/player/<version>/playerglobal.swc
Where <version> is the major and minor version numbers of the Adobe Flash
Player separated by a period or full stop.
If all of the playerglobal swcs where installed the frameworks/libs/player
directory structure would look like this.
/frameworks
/libs
/player
/10.2
/playerglobal.swc
/10.3
/playerglobal.swc
/11.0
/playerglobal.swc
/11.2
/playerglobal.swc
/11.2
/playerglobal.swc
/11.3
/playerglobal.swc
/11.4
/playerglobal.swc
/11.5
/playerglobal.swc
/11.6
/playerglobal.swc
/11.7
/playerglobal.swc
/11.8
/playerglobal.swc
/11.9
/playerglobal.swc
/12.0
/playerglobal.swc
/13.0
/playerglobal.swc
Apache Flex has been tested with Adobe Flash Player 11.1, 11.5, 11.7, 11.8,
11.9, 12.0 nd 13.0 on Windows and Mac.
Apache Flex has not been tested on Linux so some issue may exist in this
release.
It compiles against other Adobe Flash Player versions and is expected to
work but their may be some issues, particularly with the earlier 10.2 and
10.3 versions of the Adobe Flash Player.
Software Dependencies
---------------------
Apache Flex uses third-party code that will be downloaded as part of the
Apache Flex build. In addition, there is some optional third-party code
that you can choose to download if you would like to take advantage of the
features offered and you agree to the license terms.
The Apache Version 2.0 license is in the LICENSE file.
The following dependencies have licenses which are, or are compatible with,
the Apache Version 2.0 license. You will not be prompted to acknowledge the
download. Most of the jars are installed in lib/external.
activemq - http://archive.apache.org/dist/activemq/apache-activemq/5.3.1/apache-activemq-5.3.1-bin.zip
codec - http://archive.apache.org/dist/commons/codec/binaries/commons-codec-1.5-bin.zip
commons-collections - http://archive.apache.org/dist/commons/collections/binaries/commons-collections-3.1.tar.gz
commons-fileupload - http://archive.apache.org/dist/commons/fileupload/binaries/commons-fileupload-1.1.zip
commons-httpclient - http://archive.apache.org/dist/httpcomponents/commons-httpclient/binary/commons-httpclient-3.1.zip
commons-logging - http://archive.apache.org/dist/commons/logging/binaries/commons-logging-1.1.1-bin.zip
hsqldb - http://downloads.sourceforge.net/project/hsqldb/hsqldb/hsqldb_1_8_0/hsqldb_1_8_0_10.zip?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fhsqldb%2Ffiles%2Fhsqldb%2Fhsqldb_1_8_0%2F&amp;ts=1378509998&amp;use_mirror=softlayer-dal
jms - http://downloads.sourceforge.net/project/openjms/openjms/openjms-0.7.6.1/openjms-0.7.6.1.zip?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fopenjms%2Ffiles%2Fopenjms%2Fopenjms-0.7.6.1%2F&amp;ts=1378512874&amp;use_mirror=hivelocity
log4j - http://archive.apache.org/dist/logging/log4j/1.2.14/logging-log4j-1.2.14.zip
spring-framework - http://s3.amazonaws.com/dist.springframework.org/release/SPR/spring-framework-3.0.3.RELEASE.zip
spring-security - http://s3.amazonaws.com/dist.springframework.org/release/SEC/spring-security-3.0.3.RELEASE.zip
spring-flex - http://repo1.maven.org/maven2/org/springframework/flex/spring-flex-core/1.5.2.RELEASE/spring-flex-core-1.5.2.RELEASE.jar
jakarta-taglibs - http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/jakarta-taglibs-standard-1.1.2.zip
aopalliance - http://downloads.sourceforge.net/project/aopalliance/aopalliance/1.0/aopalliance.zip?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Faopalliance%2Ffiles%2Faopalliance%2F1.0%2F&amp;ts=1378515484&amp;use_mirror=softlayer-dal
backport - http://downloads.sourceforge.net/project/backport-jsr166/backport-jsr166/2.2/backport-util-concurrent-2.2.zip?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fbackport-jsr166%2Ffiles%2Fbackport-jsr166%2F2.2%2F&amp;ts=1378515970&amp;use_mirror=heanet
cglib - http://downloads.sourceforge.net/project/cglib/cglib2/cglib%202.1_03/cglib-nodep-2.1_3.jar?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fcglib%2Ffiles%2Fcglib2%2Fcglib%25202.1_03%2F&amp;ts=1378516297&amp;use_mirror=hivelocity
jackson-core - http://repository.codehaus.org/org/codehaus/jackson/jackson-core-asl/1.0.0/jackson-core-asl-1.0.0.jar
tomcat - http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.29/bin/apache-tomcat-6.0.29.zip
xalan - http://archive.apache.org/dist/xml/xalan-j/binaries/xalan-j_2_6_0-bin.tar.gz
xerces - http://archive.apache.org/dist/xerces/j/Xerces-J-bin.2.9.1.zip
ExcludeDoclet.java - http://sixlegs.com/misc/ExcludeDoclet.java
mx4j - http://repo1.maven.org/maven2/mx4j/mx4j-jmx/1.1.1/mx4j-jmx-1.1.1.jar
axis - http://archive.apache.org/dist/axis/axis/java/1.4/axis-bin-1_4.zip
testng - http://mirrors.ibiblio.org/pub/mirrors/maven2/org/testng/testng/5.8/testng-5.8-jdk15.jar
Using the Binary Distribution
-----------------------------
TBD
Building the Framework in a Binary Distribution
-----------------------------------------------
The source for most of the framework is included in the binary distribution.
It can be useful if you wish to debug and/or extend components.
When you have all the prerequisites in place and the environment variables
set, (see Install Prerequisites above), use
cd <blazeds.dir>
ant main (or just ant since the default target is main)
to download the third-party dependencies and build BlazeDS. You
may be prompted to acknowledge some of the downloads. Since the third-party
dependencies take a little while to download and they don't change very
often, they are not cleaned with the regular clean target.
To clean the build, of everything other than the downloaded third-party
dependencies use
ant clean
To clean the build, of everything, including the downloaded third-party
dependencies use
ant super-clean (which is just thirdparty-clean followed by clean)
Building the Source in the Source Distribution
----------------------------------------------
When you have all the prerequisites in place and the environment variables
set (see Install Prerequisites above), use
cd <blazeds.dir>
ant main (or just ant since the default target is main)
to download the thirdparty dependencies and build the source. You may be
prompted to acknowledge and/or confirm some of the downloads. Since the
third-party dependencies take a little while to download and they don't
change very often, they are not cleaned with the regular clean target.
To clean the build, of everything other than the downloaded third-party
dependencies use
ant clean
To clean the build, of everything, including the downloaded third-party
dependencies use
ant super-clean (which is just thirdparty-clean followed by clean)
To generate a source distribution package and a binary distribution package
use
ant -Dbuild.number=<YYYYMMDD> -Dbuild.noprompt= release
The packages can be found in the "out" subdirectory.
To build the ASDoc package
ant asdoc-package
To get a brief listing of all the targets type
ant -projecthelp
Thanks for using Apache Flex BlazeDS. Enjoy!
The Apache Flex Project
<http://flex.apache.org>