Some pretty exciting stuff happening today as we (Adobe) have announced plans to release source code for its remoting and messaging technologies under a new open source product named "BlazeDS". I'm excited to be a part of this project as we move the Internet forward another notch in terms of richness and usability and bringing it all to the world with even more free and open software.
The public beta is available now for download from Adobe Labs here: http://labs.adobe.com/technologies/blazeds/
Read the Adobe Press Release PDF that went out this morning here.
With BlazeDS, developers can easily connect to back-end distributed data, as well as push data in real-time to Adobe Flex and Adobe AIR applications for more responsive RIA experiences. BlazeDS is being contributed to open source under the Lesser General Public License (LGPL v3) – the same license used by Red Hat/JBoss, which is good.
In addition, the Action Message Format (AMF) protocol specification has been published to open it up for other implementations across other server environments, and we'll be adding an Appendix to the AMF spec doc to include the details of the Small Messages feature new in BlazeDS as well.
What about the product Adobe LiveCycle Data Services product? We'll be offering a LiveCycle Data Services, Community Edition as a subscription offering that includes certified builds of BlazeDS, enterprise support, additional developer support, and may contain additional benefits, such as product warranty and infringement indemnity.
The commercial version of the product, LiveCycle Data Services ES, includes enterprise class capabilities for building advanced customer engagement applications. We haven't yet announced the feature set for the next version of LiveCycle Data Services ES, but a private Beta program begins early next year, and we're very, very excited about it.
Also note that with today's announcement, there are new Beta versions of Adobe Flex and Adobe AIR also available from Adobe Labs as well.
Why is this important?
Organizations are using RIAs to more effectively engage with customers, partners and suppliers across their extended enterprises. This has dramatically increased the requirements for better data connectivity options to back-end systems, improved data transfer performance, and a consistent and simplified programming model for exchanging data between clients and servers.
Contributing the BlazeDS data connectivity technologies to the open source community makes them accessible to all developers, and the documentation of the protocols opens them up for other implementations on non-Java back ends. This enables developers to extend the reach of their applications across different server technologies in a compatible and consistent approach, thereby accelerating application development and increasing application performance.
What is BlazeDS?
Previously available only as part of LiveCycle Data Services ES, BlazeDS is the Remoting and HTTP-based Messaging technology that Adobe is contributing to the community free and open source.
- Easily connect Flex and AIR applications to existing server logic.
- High performance data transfer for more responsive applications
- Real server push over standard HTTP
- Full pub/sub messaging that extends existing messaging infrastructure
- Free and open source
What is LiveCycle Data Services, Community Edition?
LiveCycle Data Services, Community Edition allows organizations to take advantage of open source BlazeDS, but with all the trust and Adobe backing required for business-critical applications.
- Includes access to the latest BlazeDS technology as it is tested and released, as well as patches, bug fixes and upgrades to newer releases
- Also includes product warranty, infringement indemnity, additional enterprise and developer support
- Subscription pricing will be announced at the time of general release of BlazeDS under the LGPL v3, currently scheduled for early 2020.
What is LiveCycle Data Services ES?
LiveCycle Data Services ES is the commercial version of the product for enterprise-class applications that require data synchronization, offline support for Adobe AIR, portal integration, RIA integration with LiveCycle Enterprise Suite business processes and document services, as well as more advanced deployment options for maximum salability.
A good example of the capabilities added with LiveCycle Data Services ES is the recently announced win with NATO for its new Mission Support System.NATO crew members will be able to put together mission briefs aggregated from over 80 different data sources, including information such as flight numbers, details about the region and routes to take refuge in case of an emergency. Mission briefs are highly visual electronic maps that show all the information they need to analyze, develop and deliver in preparation for a mission.
Pricing for LiveCycle Data Services ES starts at $6,000 per CPU.Open is Good!
This announcement builds on Adobe’s commitment to open technology initiatives and its support for a vibrant developer community.
Examples include open source Flex (announced in April 2007), contribution of source code for the ActionScript Virtual Machine to the Mozilla Foundation under the Tamarin project, the use of the open source WebKit engine in Adobe AIR, and the release of the full PDF 1.7 specification for ISO standardization.
BlazeDS source code, builds and licensing will be hosted by Adobe, along with an open planning process that includes the publication of specifications for review and comment by the community. Contributions to the BlazeDS technologies will be encouraged initially through the public bug database, including feature requests and a community voting system. Over time, Adobe plans to promote external contributors to “committer” status, allowing them to contribute code to the source tree.What is Remoting?
BlazeDS remoting provides a call and response model for accessing server-side Java objects and ColdFusion components from Flex or Ajax applications as if they were local objects. BlazeDS integrates with the existing Java security policies on the server and provides transparent data transfer between ActionScript and Java data types, including data structures that use Java 5 enumerations.
By freeing developers from writing tedious marshalling code, remoting saves developers valuable time, and the use AMF, a binary data transfer protocol natively supported by the Adobe Flash Player, can improve data transfer performance an order of magnitude compared to XML/SOAP.What is Web Messaging?
The web messaging service in BlazeDS provides support for publish and subscribe messaging over HTTP using standard protocols, concepts and terminology.
- Adobe Flex and Ajax clients receive pushed messages from the server by subscribing to one or more topics.
- When client or server code publishes a message to one of these topics, it is received by all clients who have subscribed to that topic.
>The management of subscriptions and publishing of messages is performed by a messaging adapter.
Adapters are provided for routing messages between Flex/Ajax clients and between Flex/Ajax clients and the Java Message Service (JMS) and ColdFusion. -Developers also can write their own message adapter by writing Java code to perform custom message processing or subscription management.
With BlazeDS web messaging, developers will be able to create real-time collaboration and data push applications for better decision-making and more engaging user experiences, such as guided self-service, live help, performance monitoring, and incident tracking.
BlazeDS introduces a new HTTP streaming channel that establishes a persistent connection between client and server for true data pushWhat is AMF?
"AMF" stands for "Action Message Format", and is a compact binary format for data serialization/deserialization and remote method invocation.
A key feature of this format is that it preserves the entire graph of data without duplicating identical objects. Object encoding controls how objects are represented in AMF. Flash Player uses AMF to enable efficient communication between Flash Player and a remote server. AMF encodes remote procedure calls into a compact binary representation that can be transferred over HTTP/HTTPS. ActionScript objects and data values are serialized into this binary format, which is generally more compact than other representations, such as XML.
Data delivery performance when using AMF is up to 10 times faster than applications delivering data payloads using plain XML over HTTP or web services. As data size increases the performance benefits of using BlazeDS increase exponentially. AMF improves performance by dramatically compressing the size of data transferred and parsing binary data into objects in memory far more efficiently than parsing XML data.How does BlazeDS relate to Adobe’s RIA technologies?
BlazeDS is an integral part of Adobe’s RIA technologies, including best-in-class tools, servers, services and runtime environments, that allow designers and developers to create engaging application experiences that run on more platforms and devices than any other technology.
The combination of open source Flex and BlazeDS dramatically reduces the time it takes for developers to build responsive RIAs.
This morning a joint press release went out over the wire from Adobe and NATO, headquartered in Brussels, Belgium, announcing that NATO is adopting Adobe® Flex™ and Adobe LiveCycle Data Services ES software. Flex and LC Data Services ES will be used for in it's new "Mission Support System" (MSS).
Read the full press release here.
The system will "...help improve NATO's operational readiness, by reducing the time to prepare for missions, and improve the delivery of information to flight crew members."
Very cool stuff. Since I've taken on the additional responsibility for the Adobe LiveCycle Data Services ES Engineering team here at Adobe, it's a reminder to me that we bear an awesome responsibility to our customers to make sure our software is the very best we can humanly produce when it goes out the door. Organizations the world over are depending on us to get it right.
According to the press release, by delivering the new system as an Rich Internet Application (RIA) with Flex and LCDS, NATO crew members will be able to put together mission briefs aggregated from over 80 different data sources, including information such as flight numbers, details about the region and routes to take refuge in case of an emergency. Mission briefs are highly visual electronic maps that show all the information they need to analyze, develop and deliver in preparation for a mission.
For those who may not be familiar wth Adobe LiveCycle Data Services, check out the official product page here on the Adobe website: http://www.adobe.com/products/livecycle/dataservices. It allows applications tpo be developed that automatically synchronize data between rich Internet applications (Flex and Ajax) and back end servers, providing real-time data push and publish/subscribe messaging, and enable collaborative and occasionally disconnected applications.
For those Adobe ColdFusion customers following my blog, not to worry: I'm still a part of the ColdFusion team and will keep my responsibilities there for the foreseeable future. But watch this space for more to come about both Adobe LiveCycle Data Services ES AND Adobe ColdFusion.
It's a great time to be building Internet applications!
As a kid I always thought I could do a better job at running a radio station and picking songs than the big national radio chains.
So to the right (in the nav bar) is a cut at a digital radio station I'll dub "Premium Christian Radio", commercial free, with the Flash Player as the DJ for now :)
EDIT: I've made some "programming changes":
1) Pulled out a bunch of songs that were good, but not so "Premium" in my judgment,
2) Added some additional content of various Christian artists that I thought did meet the bar for excellence,
3) Added in some more good Christmas music and trimmed some of the not-so-good stuff that was there, and
4) I've added a "open in popup" under the tuner that you can click to open the tuner in a new window so you don't have to keep my blog open all day while it plays.
All music should now be at about the same audio levels. No more running for the volume controls between tracks. Sorry about that!
Enjoy and comments welcome!