02
Aug
08

Using the beta Gumbo SDK in Flex Builder 3

In a previous entry, “Downloading and installing Flex SDK builds from opensource.adobe.com”, we saw how to download and install nightly builds of the Flex 3 SDK into Flex Builder 3.
Setting up the beta Gumbo SDK has a couple little “gotchas” which can be a little tricky.

  1. Download the latest Gumbo SDK nightly build from opensource.adobe.com and extract the files in the .ZIP archive to your hard drive.
  2. Follow steps 4 through 6 in the “Downloading and installing Flex SDK builds from opensource.adobe.com” entry to add the Flex SDK build to Flex Builder.
  3. Create a new Flex project in Flex Builder 3.
  4. Select Project > Properties in Flex Builder’s main menu to launch the Project Properties dialog box. Select Flex Compiler from the left menu, click the Use a specific SDK radio button, and select the Gumbo SDK you added in the previous step.
  5. In the HTML wrapper section of the Flex Compiler settings dialog, set the required Flash Player version to 10.0.0 (see Figure 1). Click OK to close this dialog box.

Flex Builder Project Properties dialog box

Figure 1. Flex Builder Project Properties dialog box.

If you forget to change the Flash Player detection to Flash Player 10, you may see the following compiler errors in your Flex Builder Problems tab:
1046: Type was not found or was not a compile-time constant: ContentElement.
1046: Type was not found or was not a compile-time constant: ElementFormat.
1046: Type was not found or was not a compile-time constant: FontMetrics.
1046: Type was not found or was not a compile-time constant: GroupElement.
1046: Type was not found or was not a compile-time constant: TextElement.
1046: Type was not found or was not a compile-time constant: TextLine.

If you haven’t already installed the Flash Player 10 beta yet, you can find the various installers in the downloaded SDK’s /runtimes/player/10/{OS}/ directory.

Now that you have the Gumbo SDK and Flash Player 10 installed, now it’s time to write a simple test file using the latest Flex SDK.

Full code after the jump.

View MXML

<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2008/08/02/using-the-beta-gumbo-sdk-in-flex-builder-3/ -->
<Application xmlns="http://ns.adobe.com/mxml/2009"
        xmlns:mx="http://ns.adobe.com/mxml/2009"> <!-- was: library:adobe/flex/halo -->

    <Group id="group"
            horizontalCenter="0"
            verticalCenter="0">
        <Rect id="rect"
                width="120"
                height="60">
            <fill>
                <SolidColor color="red" alpha="0.2" />
            </fill>
            <stroke>
                <SolidColorStroke color="black" weight="4" />
            </stroke>
        </Rect>
        <TextGraphic id="textGraphic"
                horizontalCenter="0"
                verticalCenter="0"
                color="#000000"
                fontFamily="Arial"
                fontWeight="bold">
            <content>{Capabilities.version}</content>
        </TextGraphic>
    </Group>

    <mx:Label text="I'm a Halo Label component!" />

</Application>

View source is enabled in the following example.


25 Responses to “Using the beta Gumbo SDK in Flex Builder 3”


  1. 1 akyo Aug 4th, 2008 at 8:47 pm

    Thanks~!

  2. 2 Oluwaseun Aug 5th, 2008 at 9:34 am

    After, we changer to flash player 10, I’m wondering why it is asking to install flash player 9.

    Would you want to tell me why this happened?

  3. 3 Renaun Erickson Aug 6th, 2008 at 4:23 pm

    Thanks, just had the problem with the Flash Player Detection and compiler errors.

  4. 4 laan Aug 7th, 2008 at 3:08 am

    so great

  5. 5 simon Aug 9th, 2008 at 7:27 pm

    Am working with Gumbo and getting this error “An unknown item is declared as the root of your MXML document. Switch to source mode to correct it”

    The application runs fine but i cannot use the designer.

  6. 6 simon Aug 9th, 2008 at 7:30 pm

    Am also showing this warning:

    Design mode: Cannot load text_model.swc (reason: ERROR: Load Verify). It may require classes (such as Adobe AIR components) that are not supported by design mode.

    Does anyone have any idea what it is?

  7. 7 lakshmikanthreddy Aug 18th, 2008 at 11:31 pm

    hi simon ,

    even i am getting the same error , the application is running fine with Gumbo SDK but it is unable to open in the Design mode , can anyone help me out .

  8. 8 looptroop Aug 21st, 2008 at 3:43 am

    and i’m getting the same error ((((

  9. 9 peterd Aug 21st, 2008 at 7:06 am

    I get the same error in Flex Builder 3.0.1 also (”An unknown item is declared as the root of your MXML document. Switch to source mode to correct it.”)

    Can one of you file this in the Flex Bugbase, http://bugs.adobe.com/flex/, and post the bug number here so a few of us can vote on it.

    Thanks,
    Peter

  10. 10 Alex C Aug 22nd, 2008 at 11:27 am

    Thanks for the great info, as always! Does anyone know if the latest SDK builds fix the issue with the FileUpload, where it had a malformed post that caused this error on Tomcat’s error log: “Multipart: final boundary missing”?

  11. 11 peterd Aug 22nd, 2008 at 11:50 am

    Alex C,

    I’m not aware of that specific bug, but if it is FileReference related, it would be a Flash Player issue, not a Flex SDK issue.
    If the problem still occurs with the latest public version of Flash Player 10 beta, can you file a bug at http://bugs.adobe.com/flashplayer/ if a bug isn’t already filed?

    Thanks,
    Peter

    PS: if you post the bug number here, a few of us can vote on the issue.

  12. 12 Alex C Aug 22nd, 2008 at 1:41 pm

    Hi, peterd. Thanks for your reply. Here’s the bug on the Flash bug site: https://bugs.adobe.com/jira/browse/FP-292

    However, it’s marked as “unresolved” and doesn’t seem to be a high priority. A lot of people have run into the issue; the only solution on an Apache/Tomcat server is to turn off the mod_security on the app — which then opens you up to attacks.

    I posted about it on the Flex forum today, where you can view the full details of the problem and its insecure solution: http://www.adobe.com/cfusion/webforums/forum/messageview.cfm?catid=585&threadid=1387645

  13. 13 Alex C Aug 22nd, 2008 at 1:58 pm

    BTW, I’m using Flash 10 beta on my system and the problem occurs with that as well.

  14. 14 Alex C Aug 25th, 2008 at 8:48 am

    If everyone could vote on the Flash bug page here, we could see some faster resolution to the issue discussed above: https://bugs.adobe.com/jira/browse/FP-292

    Thanks :-)

  15. 15 Alex.B Oct 17th, 2008 at 7:53 am

    Hi Peter,
    I’m trying to use the FileReference API in FB3 with new Gumbo, but I don’t able!!
    I’m looking for the solution in several forums but there isn’t anything about this problem.
    Maybe my problem is stupid, but have you any suggests for me?

    P.S.
    I have Flex Builder 3 with SDK 4.0.0.3699
    and Flash Player 10.

  16. 16 peterd Oct 17th, 2008 at 10:42 am

    Alex.B,

    Good timing! I just posted an example of FileReference in Gumbo the other day in the comments. Check out “Displaying XML data in a DataGrid”.

    And remember to change your SDK version to 4.0.0.3699, and set your Flash Player detection version to 10.0.0.

    Peter

  17. 17 GrayP Oct 23rd, 2008 at 4:59 am

    Hey there, thanks for all the info. I’ve got an issue getting the example to compile and I’ve followed all instructions.

    I’ve got FP10debug version installed, SDK 4.0.0.3827, and compiler settings for this set to the above screenshot. Under Flex build path/Library path, Flex4 is there with all the swcs.

    Unfortunatley Flex Builder flags an error for this line”
    <mx:Label text=”I’m a Halo Label component!” />

    Could not resolve <mx:Label> to a component implementation.

    Any ideas please? Thanks

  18. 18 peterd Oct 23rd, 2008 at 7:00 am

    GrayP,

    The example is probably just out of date with the API naming changes.

    Try this instead:

    <FxApplication xmlns="http://ns.adobe.com/mxml/2009"
            xmlns:mx="http://ns.adobe.com/mxml/2009">
    ...
    </FxApplication>
    

    Peter

  19. 19 GrayP Oct 27th, 2008 at 2:16 am

    Hi Peter,

    Thanks for the reply, unfortunately that’s not it. I tried on a different machine over the weekend but got the same issue. Am I missing out something?? All I’m doing is:-
    1. Download & install gumbo sdk.
    2. Create new project, under Project Properties>Flex Compiler, set SDK to Gumbo, set target Flash player = 10.
    3. That should be it. However I get the error message I mentioned above, also using Adobe’s test script at the bottom of this page:-
    http://opensource.adobe.com/wiki/display/flexsdk/Gumbo+Application?showComments=false
    I also get a similar problem,
    Could not resolve to a component implementation.

    Seems to be an issue with the mx namespace, after xmlns:mx=”library:adobe/flex/halo”

    I’ve tried this on OSX and WinXP, same result. I have also written a non-MXML application that uses SDK 4.0 in order to try out the new Flash 10 features, and that is fine, no problem.

    I find it odd I seem to be the only one with this issue :-(

  20. 20 GrayP Oct 27th, 2008 at 7:12 am

    Aah, I have just come across this post:
    http://blog.simb.net/2008/10/13/gumbo-namespace-changes-revisited/

    The small code snippet there has a mix of Halo and Gumbo buttons, and compiles fine for me. Perhaps my Gumbo build - 4.0.0.3827 - is newer, and contains this change to namespaces…?

  21. 21 peterd Oct 27th, 2008 at 8:28 am

    GrayP,

    Correct, the xmlns:mx="library:adobe/flex/halo is old and would require and older Flex Gumbo SDK to compile. If you are using a recent Flex Gumbo SDK, you’d either need to import the 2009 namespace twice (once with the “mx” prefix), or else just use <Label/> instead of <mx:Label/>.

    The example on the opensource.adobe.com site is old and should be corrected for the latest Flex Gumbo SDK.

    Peter

  22. 22 GrayP Oct 27th, 2008 at 8:32 am

    Thanks for clearing that up Peter.

    Cheers.

  23. 23 peterd Oct 27th, 2008 at 8:43 am

    GrayP,

    I also updated the example code above (inline, I didn’t republish ZIPs and SWFs), so hopefully that will help.
    After re-reading the example, it is important to note that with the latest Flex Gumbo SDK, you do not need to import the “mx” namespace to use the Halo components. You can use the default namespace and use the Halo Label control by typing <Label/>. If you want to use the “mx” namespace for any reason (you just like the way it looks), you can add the mx namespace and use the same namespace URL (http://ns.adobe.com/mxml/2009 — see my previous comment for an example), but the 2009 namespace contains both the Gumbo and Halo components.

    Not sure if that made it any clearer, but yeah. Basically, both of these should work and just depends on your personal preference.
    Default 2009 namespace:

    <?xml version="1.0" encoding="utf-8"?>
    <Application xmlns="http://ns.adobe.com/mxml/2009">
        <FxButton label="Gumbo Button"/>
        <Button label="Halo Button" />
    </Application>
    

    Default 2009 namespace and mx namespace:

    <?xml version="1.0" encoding="utf-8"?>
    <Application xmlns="http://ns.adobe.com/mxml/2009"
            xmlns:mx="http://ns.adobe.com/mxml/2009">
        <FxButton label="Gumbo Button"/>
        <mx:Button label="Halo Button" />
    </Application>
    

    Peter

  24. 24 saul Oct 28th, 2008 at 6:57 am

    Peter Thanks Yet Again!

    Anyone new to the world of flex who visits this page follow the instructions, its easy and you will be happy. I didn’t realise how easy and important it is to be updating the sdk’s.

    unloadAndStop() and FP10….

    ….SAVED MY LIFE. TY!

    Now we can build multiple swf based apps easily, without the nightmare that was FP9 and AS3 combo not garbaging the unloaded swf.

    I’m like so happy i want to kill myself right now. This is ecstacy!

  25. 25 Barry Nov 6th, 2008 at 6:32 am

    Hi.

    After reading through the comments above and trying out various things I too still get the error:

    ‘This component is based on FxApplication, which is not a visual component. Switch to source mode to edit it’

    I am using Flex Builder 3.0.194161 and Flex 4 SDK 4.0.0.4025. All I want to do is to use DESIGN view. Any suggestions?

    Thanks

    Barry.

Leave a Reply

This blog is terrible at eating HTML tags. If you plan on posting code/XML, please escape your "<" characters as "&lt;" and your ">" characters as "&gt;".