Flex, Spring and BlazeDS: the full stack! (Part 1)

[UPDATE 2] If you are still having version issues with the sample application featured in this article, you can get a fully upgraded version here

[UPDATE] This article series has been reedited on the Adobe Developer Connection. For more information, see this post.

In this article series, I’ll try to give you a step-by-step process to create an application with Flex/BlazeDS/Spring/Hibernate/MySQL architecture, all of that built with Maven. I’ve been looking for such a tutorial for a long time, but you know what Gandhi said about the change you wish to see in the world, right? So I finally put all the parts together, and with a little help from a Brazilian friend, tadaaaa! Here it comes!

But before we dive in to the hard stuff, just a few words of caution:

  1. The project that we are going to build in this tutorial is by no means perfect, especially in terms of Maven configuration. So if you have suggestions to improve it, they’ll be warmly welcome.
  2. One of the main ingredients of this project, one without which nothing would have been possible, is the flex-compiler-mojo from Velo. There are other Flex building Maven plugins out there, but at the time of this writing, none of them offers enough configuration options to build this project. On the other hand, Velo’s plugin is still in alpha, so… Anyway, if like me you are convinced that Adobe’s official Maven support is necessary, feel free to vote for this issue.

Enough blah-blah, let’s move on to the real thing. Ready to get nasty?

Where are we going?

The objective of this tutorial is to build a todo-list application that allows you to create, modify, delete and list todo items in a Flex UI. Here is the global architecture we will implement:

The Maven build is what is really tricky. Because of course, with Ant, you can do anything, but I hate writing Ant scripts, and I guess I’m not alone. As for using my IDE to build projects, I hate to depend on that, because any serious project needs some degree of testing and continuous integration. So even though Maven is not perfect, I still see it as the least bad solution.

As for JBoss, it’s not a requirement at all, it’s just what I’m using, but you could perfectly use a simple Tomcat.

Last but not least, if you want to see the end result of this tutorial, I’ve set up a demo here.

That’s it for this first episode. In the next one, will Luke understand that he can’t leave a gorgeous woman such as Lorelei? Sorry… I’m out..

19 comments

  1. i can’t wait to see this! when do you plan to release the next episode about the adventures of luke and lorelei in java&mojo country?

  2. Great stuff, thanks. Now swap out MySQL with PostgreSQL and JBoss with Glassfish, and you’d have the perfect stack. 😉

  3. I am a little bit lost as how to upgrade blazeDS

    If I go to Sebastien Arbogast’s maven repository

    for example:

    http://m2repo.epseelon.org/com/adobe/blazeds/blazeds-core/3.0.0.544/

    I see blazeds-core-3.0.0.544.jar

    If i want to get the latest release jar files from the adobe web
    site …I can’t find them…I only find a war

    http://opensource.adobe.com/wiki/display/blazeds/Downloads

    But the war says that BlazeDS is now version 3.2.0.3978

    I would appreciate some help as where to find the latest blazeDS jar
    so that I can have them in a maven repository

    Thank you!

  4. This is the first time I comment here and I must say you give genuine, and quality information for bloggers! Great job.
    p.s. You have an awesome template . Where have you got it from?

  5. Pingback: JavaPins

Leave a Reply to Blog Xebia France - Revue de Presse Xebia Cancel reply