1 Reply Latest reply on Jun 28, 2011 4:08 PM by PresidentCamacho

    Flex 3 app set to use 3.5 sdk, yet loading 3.2 sdk rsl... weird...


      Hi all

      the title pretty much says it all

      I have a flex 3 application

      in the project properties, it is configured pretty streight forward to use 3.5 sdk

      yet when I run it, I monitor the http requests and notice it asks for 3.2 version of the sdk

      It doesn't work unless I provide it the 3.2 framework RSL (swf & swz)

      any Idea how to tackle this one to use 3.5 like it suppose to?



        • 1. Re: Flex 3 app set to use 3.5 sdk, yet loading 3.2 sdk rsl... weird...

          Are you including any other SWC's, or are you loading any other SWF's at runtime?  You may have an RSL version conflict.


          I have noticed that Flash Player and Flex components will often silently fail if there is any version conflict with RSLs, this is particularly vulnerable with URLLoaded SWFs.  Every now and then you'll get a crash, but mostly I've seen just strange errors and artifacting, or just plain nothing-works like you're getting.


          My most common use case for getting this was building my main SWF against a later version of textLayout, but before I accessed any text components, I loaded an external SWF which was built to RSL load an older version of textLayout (it's the default to include textLayout in Flash Pro, and the Adobe updates don't always keep the libs in sync).  This caused the older RSL to load first, and Flex-related things would break in weird ways - in fact, with some of the FLA's I haven't updated to 4.5.1, I'm getting undefined fontSize errors on my text fields.


          This is especially nasty if you're using any SWFs created by Flash Pro, because your textLayout libraries may not necessarily be in sync - that caused me a huge headache on FB4 + FP-CS5, as you have to manually reconfigure the libs for each FLA.


          To Fix an RSL version conflict:

          You need to track down each and every source FLA and SWC you're using and verify which Flex libs its building against.  In Flash Pro, you do this in File | Publish Settings | ActionScript 3.0 Settings.  Yes, it's a painfully tedious process (even if you use export/import on the FLA settings), but I've found that even just 1 bad reference can throw a monkeywrench in the Flex gears.