Adobe MAX 2009 Session Slides/Resources

October 12, 2009By 13 Comments

If you weren’t able to come to MAX or attend our ‘Making Real-Time Data Come Alive with Flex Data Visualization’ session, Greg and I have our slides, code zip and other resources here. The lab handout has all of the source code for the lessons as well and will walk you through the lab. Please post a comment if you have any questions!

I had a wonderful time at MAX and met some really great people, I encourage all developers to make it a priority to attend this conference each year. The experience is invaluable!

If you weren’t aware, all of the session videos for MAX are posted here. Some sessions I found particularly interesting and definitely worth your time to watch the videos are:

Ely Greenfield – What’s New in Flex 4

Glenn Ruehle – Deep Dive into Flex 4 Lists and Layouts

Christophe Coenraets – Model Driven Development with Flex 4 and LCDS 3

Scott Evans – Flash Builder 4 Advanced Tips and Tricks

Chet Haase – Effects in Flex 4

Marcel Boucher – What’s Next in Livecycle ES

I’m already looking forward to Adobe MAX 2010 :)

Filed in: Flex/AIRLiveCycle Data Services Tags:

About the Author ()

Comments (13)

Trackback URL | Comments RSS Feed

  1. Don Kerr says:

    Holly,
    I enjoyed your session at MAX! I’m trying to convert Lesson2 over to BlazeDS integrated with ColdFusion 8. It seems to connecting ok and pollling but I do not see the chat messages in the textarea. My question is How would you have tried to make this work with ColdFusion?

    I followed these instruction on my mac localHost ColdFusion server http://opensource.adobe.com/wiki/display/blazeds/Installation+Guide?showComments=false#InstallationGuide-IntegratingBlazeDSwithaColdFusion8installation

    Then I modified the channelset to

    and changed the destination to cf

    modified the config files…
    services-config —

    true
    5
    60000
    1
    100

    messaging config

    *

    0

    1000
    0
    false

    Am I way off base?
    Thanks,
    Don

  2. Don Kerr says:

    This was very helpful in understanding how BlazeDS plays with ColdFusion
    http://labs.fusionlink.com/katapult/index.cfm?page=articles/blazeds

    It is very similar to the lesson2 example at MAX, but using the Flex2gateway in CF8.

    Sorry my code snippets didn’t show up in the previous post.

    Don Kerr
    Manager, Space City Adobe User Group
    Houston, TX

    • devgirl says:

      Hi Don! Thanks for coming to the MAX session!

      You are definitely on the right track. You should be able to modify that channel in the lesson2 to point to your CF instance running locally. It should be something like this (depending on how you set up your web server):

      http://localhost:8500/flex2gateway/amfpolling

      or

      http://localhost:8500/flex2gateway/amflongpolling

      If you’re trying to use long polling (as I believe we did in the lesson), you may have to add it to your services-config.xml file within your CF installation. I do not think it is there by default. It would look something like this:

      true
      5
      60000
      1
      200

      If you want to make sure you’re using the right channel URL, you should be able to hit it in the web browser and it will not give you an error (probably just a blank page), but the lack of error indicates you’ve got the URL right. The default amfchannel should be definted without having to make any changes, so you could test that scenario first (using http://localhost:8500/flex2gateway/amfpolling or http://localhost/flex2gateway/amfpolling again depending on your setup).

      Also make sure you have added the messaging-config.xml change to include the helloWorld destination. It sounds like you did that though. If none of that works, check the server logs and let me know what you see!

      Hope this helps!
      Holly

  3. Don Kerr says:

    Thank you Holly. Got it working. After spending all weekend trying to configure CF8 with BlazeDS, I decided to just press on with upgrading my servers to CF9! Now it all works. :)

    I’m very exciting about implementing Real-Time data with Flex/CF9 here at NASA in my Flex/Air/CF apps. I also have a new client for my fusionpage.com business that wants real-time data delivered to a Kiosk/Flat Screen TV. They want a real-time process status of when all their credit union branch change state (e.g. books closed for the day, etc.). I immediate saw how your lessons could really help me meet their needs.

    I’m following your blog and twitter now! Thanks again!
    Don

    • devgirl says:

      Fantastic!! I’m so glad to hear you got it working and you’ve made the move to CF9! There is a ton of potential with just knowing the basics (ie: FedEx Tracking System shown at MAX) and it sounds like you have some excellent use cases to try this with so you’re off to a great start!

      Feel free to contact me if you have any issues in the future and best of luck Don!
      Holly

  4. Don Kerr says:

    Holly,
    Are there any issues with both the producer and consumer being the same flex client with the same CF destination/channel (gateway)? I’ve converted the googlemaps lesson into a CF longpolling channel. When I use a cfm page as the producer, the messages arrive and show up in the map just fine. When I try to use the flex client as producer, the flex console appears to have the traffic with no errors, but the message result handler never fires. the message handler works fine with the cfm producer version. The flex producer.send is working because I see the messages in the console. Any ideas? I know this is a general question without source, but I’m just wondering if you’ve experience issues with producer and consumer in the same flex client.

    Thanks,
    Don

    • devgirl says:

      Hi Don, I haven’t looked at the code yet, but have you tried running JUST the Flex client without the cfm page at the same time? Or tried running the Flex client on one browser and the cfm page from another (like Firefox versus Safari)? You should definitely be able to run both a producer/consumer in the same client, but I have seen issues with using two Flex clients in the same browser to do that. Not sure if the cfm page would do that as well. Also, when you say you see messages in the console, are you talking about trace messages from the messaging services? Do you have a fault handler? I will take some time to look at the code as soon as I have a chance, but let me know if the browser thing, or Flex client alone makes a difference. Kind Regards, Holly

  5. Don Kerr says:

    In case you have time to glance over my source
    http://www.fusionpage.com/flex/Messaging/bin/screen.html
    view source includes the config files and a sendData.cfm page.

    the data should be appearing on the map right away from the flex producer, however it only appears if I open this page
    http://www.fusionpage.com/flex/Messaging/sendData.cfm

    both should work really. But, I’d rather not use the external cfm. I want to learn how to make flex the producer.

    EndofDay.mxml is the map view that contains the flex producer/consumer. Shows the location closure status for credit union offices. (random data for now in testing).

    If the cube screen rotates away from the map, just refresh. This is going to be a kiosk-like app for automatically rotating between various displays on a timer.

    I hate to keep bothering you. Hope you don’t mind.
    Thanks,
    Don

  6. Don Kerr says:

    Hi Holly,
    Still seem to have a problem getting a flex-based producer to send messages to another flex-based consumer. As long as I use CF as the producer, it works fine. I’m wondering if it is a CF9 config issue?

    Do you have a basic working example of a Flex producer sending a basic message through CF server/BlazeDS and that message being consumed in another flex client?

    Sorry to keep bothering you. It is driving me crazy because I’m sure it is something easy to fix. I just can’t find anything that is CF9 specific to compare my code to.

    Thanks,
    Don

  7. Don Kerr says:

    Hi Holly,
    can you view the source of this app. it included my CF9 messaging/services config files too.

    http://www.fusionpage.com/flex/Messaging/bin/cfchat.html

    this is the basic chat example, but using cf-longpolling-amf default in CF9.

    I can’t get the producer messages to appear in the chat window.

    I know the CF9 gateway works because, in another app, it receives the messages just fine
    http://www.fusionpage.com/flex/Messaging/bin/screen.html
    via
    http://www.fusionpage.com/flex/Messaging/sendData.cfm

    So, I’m trying to use the simple chat example to troubleshoot why CF9 doesn’t work with the config files I have defined. If I can figure out why the flex producer doesn’t work with CF9, using the basic chat example, then I can fix my Screen.html example too.

    Would you mind looking at:
    cfchat.mxml, messaging-config.xml, and services-config.xml and see if you see any issues with them?

    Thanks,
    Don

  8. Don Kerr says:

    Figured it out after posting this last comment! It was something I didn’t find in any of the CF9 docs/blogs/etc. It was a problem with my gateway cfc . Had to add this function to the gateway cfc .

    So, in short, the same function that was working in my cfm page … needed to be included in the gateway cfc in order for the flex client to become the producer.

    I also had to change the dot syntax
    log.text += message.body.DATA.body.chatMessage + “\n”;

    message was coming back inside .DATA.

    Feels good to finally get the server-side configured properly! Now, I can proceed with building some production CF9/BlazeDS Real-Time data projects!

    I really appreciate your MAX session for inspiring me to learn more about Real-Time data viz!

    Thanks!
    Don

    • devgirl says:

      Hi Don! I was trying to recreate your problem but I’m glad to hear you figured it out already! Looks like you’re well on your way with your app and have a great use case. Keep us posted with your progress or if you find other issues that could help others.

      Cheers!
      Holly

Leave a Reply