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:
- 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.
- 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..