BlazeDS: Open Sourcing Remoting and Messaging

Today is yet another exciting day for the Flex community and for the world of Rich Internet applications… Adobe is announcing plans to release its Remoting and Messaging technologies under a new open source product named BlazeDS.

The news is probably all over the blogs, but I thought I would summarize the key points:

Read more

Speaking at FlexCamp in Boston on Friday

I will be delivering the opening keynote at the FlexCamp in Boston (at the Bentley College in Waltham) on Friday. This promises to be a really great event with great speakers from the Flex Engineering Team (Paul Reilly, Peter Farland, Tom Jordahl) and other Flex celebrities (Joe Berkovitz, David Coletta, Thomas Burleson, Matt Woodward). Hope to see you there: http://www.flexcampboston.com/

Interactive Bubble Pipeline: Another Hybrid (HTML/Flex) Example

A customer recently pointed out to me that many of our examples feature full-page Flex applications, and wanted to me to demonstrate how a Flex application can integrate with an HTML/Ajax application. Hybrid applications are definitely part of our vision for Flex, and there are many real-life examples of mixing Flash and HTML content out there (see http://finance.google.com/finance?q=adbe). This customer wanted to look at the integration at the code level. Instead of the usual “Hello from Flex”/”Hello from JavaScript” message exchange example, I wanted to show something more meaningful that would also show “why” you would actually want to do this…

Read more

Experimenting with the ILog Elixir Components for Flex

I spent some time playing with the ILog Elixir components for Flex. If you haven’t checked them out they are definitely worth looking at. Live samples are available here: http://www.ilog.com/products/elixir/

I experimented with the 3D charts components which definitely provide a good example of the expressiveness of the Flex platform. Looking at the sample code, it looks like you can’t simply enable the 3D mouse interactivity (click and drag to rotate, mouse wheel to zoom in / zoom out) by setting a component property: you actually have to write some code, capture mouse events, etc… In my own experimentation, I isolated that code in a reusable Chart3DControl component that makes it easy to provide this kind of mouse interactivity in any component in your application.

Read more

Offline Synchronization using AIR and LiveCycle Data Services

contacts3.gif

As part of my MAX talks in Chicago and Barcelona, I used a simple Contact Manager application to demonstrate offline synchonization using AIR and LiveCycle Data Services (LCDS). Many people have asked me to share the code, so here it is… This is actually an update of an application I posted a few months ago (but that didn’t include the offline synchronization part at the time).

Read more

New AIR SQLite Administration App (with Source Code)

UPDATE: This version is now obsolete. A new version is available here.

Here is an updated/rewritten version of my AIR SQLite Admin application. You can use this application to examine the structure of a database, create a new database or open an existing one, execute any type of SQL statement, etc.

An interesting aspect of this new version is that the application itself uses a database (sqladmincache.db) to keep track of the databases you opened and the statements you executed. This is useful if you want to quickly re-open a recently accessed database, or re-execute a recently executed statement.

This new version uses synchronous database operations (AIR beta 1 only supported asynchronous database access), and uses the schema API (also new in beta 2) to show you the list of tables and columns available in your database.

The UI is still simple, but uses some new AIR and Flex 3 features such as the AdvancedDataGrid and Native Windows.

Click here to install the application.

Click here to download the source code.

Speaking at the QCon Conference in San Francisco (Nov 7-9)

I will be presenting a session called “Rich Internet Applications for the Browser and the Desktop with Flex and AIR” at the QCon Conference on November 7th. I delivered a similar session at QCon in London earlier this year: QCon is definitely a high quality conference with deep technical content around Java, .NET, Ruby, SOA, Emerging Client Technologies, etc. The conference will be held in San Francisco from November 7th to 9th, with two days of tutorials on November 5th and 6th. Hope to see some of you there!

Salesbuilder for Flex 3 / AIR Beta 2 (AIR file + source code)

I migrated the Salesbuilder application for Flex 3 / AIR beta 2.

Click here to install the application.

Click here to download the source code.

Follow this script for a guide tour of the application.

Annotating ActionScript Classes with Custom Metadata + Simple ORM Framework for AIR

A little known feature of Flex 3 is that you can annotate ActionScript classes with your own metadata. For example you could annotate a class as follows:

package
{
	[Bindable]
	[Table(name="contact")]
	public class Contact
	{
		[Id]
		[Column(name="contact_id")]
		public var contactId:int;

		[Column(name="first_name")]
		public var firstName:String;

		[Column(name="last_name")]
		public var lastName:String;
		public var address:String;
		public var city:String;
		public var state:String;
		public var zip:String;
		public var phone:String;
		public var email:String;
	}
}

In this example, [Bindable] is a standard Flex metadata annotation while Table, Id and Column are custom. The -keep-as3-metadata compiler flag allows you to instruct the compiler to keep your metadata in the generated SWF so that you can get to this information at runtime using the reflection API (describeType).

Read more

Salesbuilder source code available

As promised, here is the source code for the Salesbuilder Flex / Air sample application:

salesbuilder_src_beta2.zip

Disclaimer: This is work in progress and some code still needs to be polished and documented. I’m planning on continuing to develop the application, starting with complete server integration and synchronization. Your feedback and ideas are welcome.

I also took the opportunity to fix a few bugs. You can install the latest version of the app (corresponding to the source code posted above) here:

Install Salesbuilder

Christophe

← Previous PageNext Page →