Tag Archives: Migration

Top hiccups when migrating from Flex 3 to Flex 4

I just sent off a draft today of an article about “Differences between Flex 3 and Flex 4”. It should be going out on Adobe’s Dev Net when we release our first public beta of Flex 4. I was supposed to keep the article between 1500 and 3000 words, but, I couldn’t! There was just too much information to cover. Hopefully, the editors don’t end up chopping it up and it gets to all of you in one cohesive piece.

Anyways, I thought I would highlight some of the things you might run into when you try to compile a Flex 3 application in Flex 4. Note, this will not be a complete list, but, hopefully, I’ll get the majority of big items covered.

1) Default theme has changed from Halo to Spark.

Who will this affect? This will affect just about every Flex application that did not compile with its own custom theme.

What’s the difference? See my last post about the differences between the Spark theme and the Halo theme.  Your application will likely size differently from a different default font, styles not working the same and various other changes.

How do I fix this? The Halo theme is included in Flex 4, so, you can compile with the an additional compiler argument “-theme” and point to the halo.swc in the frameworks/themes/Halo directory of the SDK.

2) Type selectors stop working.
Who will this affect? Applications using type selectors to style components in CSS. Here is an example: Button { color: #FFFFFF};

How do I fix this? Add a default namespace from the top of your CSS definition. Here is an example:


@namespace “http://www.adobe.com/2006/mxml

Button {

color: #FFFFFF;



3) The default preloader changed.

Who will this affect? Applications that are not using a custom preloader.

What’s the difference? The default preloader is not mx.preloaders.SparkDownloadProgressBar. The preloader has not “loading…” text. It has no text at all, just a progress bar.

How do I fix this? If you want the old preloader, you just need to add the following to your root tag: preloader=”mx.preloaders.DownloadProgressBar”

4) Flex 4 only supports player 10

Who will this affect? All Applications compiled in Flex 4.

How do I fix this? If you are using Flex Builder 3 with a Flex 4 SDK to create a Flex 4 project, you will need to change your compiler settings in the property panel. Be sure that your minimum player settings is at least 10.0.0. When you create a new project in Flex Builder 3, the minimum player version is 9.


There are many other changes that are minor bug fixes that might affect you. If you have questions about compiling a Flex 3 application in Flex 4… post a comment. Thanks and Good luck!