| 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&ts=1378509998&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&ts=1378512874&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&ts=1378515484&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&ts=1378515970&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&ts=1378516297&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> |