In this video, I demonstrate how to build Flex 4 applications with a Java back-end using the new “Data-Centric Development” features of Flash Builder 4 (including service introspection, value object and service stub generation, etc).
If you want to try it yourself, the environment I used for the demo is part of a new Test Drive I put together to allow you to get started quickly with Flex 4, Flash Builder 4 and Java. The Test Drive environment consists of a minimal version of Tomcat with BlazeDS 4 preconfigured to work with the Flash Builder 4 data centric features and a sample application. You can download the Test Drive here.

Great demo!
Any chance you could do one that shows how to integrate Groovy/Grails as a back end?
I’ve tried to get it working but Flash Builder wizard keeps throwing up errors.
Thanks Christophe Coenraets,
I am following your testdrive and was creating a new Flex Client Project and binding to FlexTestDrive running on http://http://localhost:8400/spring-flex-testdrive
On data binding to the BlazeDS I get the following error:
“RDS Server message:
Error Executing RDS command. Statuss Code: 404, Reason /spring-flex-testdrive/CFIDE/main/ide.cfm.
Suggestion:….”
Can you please give me some thoughts on how to resolve this.
I couldn’t find a feature list of BlazeDS 4. What’s new in version 4 compared to the previous version?
the network is to slow
Using this example, when I click next, in select service type (after select BlazeDS) it return the following error:
RDS server message:
Error executing RDS command. Status Coide : 502, Reasin : Proxy error (Forefront TMG denied the specificied Uniform Resource Locator (URL). )
What can it be?
it sounds like you need to add an exception to your forefront client or perhaps turn it off?
If you want to add a new column in the database, how do you refresh and run the database?
I know after that you have to right click on the Data Service and choose refresh – but I still don’t get my new column.
I have added the new column accordingly like the others, by adding into this classes:
c:\flex-java-testdrive\projects\java-testdrive\src\flex\samples\contact\Contact.java
c:\flex-java-testdrive\projects\java-testdrive\src\flex\samples\contact\ContactDAO.java
c:\flex-java-testdrive\projects\java-testdrive\src\flex\samples\util\DatabaseService.java
Also have restarted tomcat, but no luck.
Which are the steps of adding a new column to the database and updateing it in the Flex app ?
Many thanks,
I have just noticed that there are 2 separate locations of the java database .class files:
1) C:\flex-java-testdrive\projects\java-testdrive\src\flex\samples\contact\*.class
2) c:\flex-java-testdrive\tomcat\webapps\testdrive\WEB-INF\classes\flex\samples\contact\*.class
And if you modify something in path 1) then y0u have to copy the .class files into path 2) your self other wise the change will not be visible.
Is there a way to have the WEB-INF updated it self when you edit from sources located on path 1) directly ?
Thanks,
This is a fantastic tutorial Chritophe. Thanks for putting it together.
However, I am finding BlazeDS incredibly frustrating to work with. This tutorial shows me what I want to do can be done and shows me how to do it from the Flex side. But it doesn’t tell me – and the frustrating thing is NOTHING seems to tell me – how to put a real life Flex – BlazeDS application together. There is nothing that takes you through the whole process of setting up a BlazeDS working environment. I’ve been working on this for five days straight now.
Obviously I will have to connect BlazeDS to a production database. In my case, I want to connect to MySQL. It would be really nice if someone from Adobe would tell us how to do that. There is a sample in the Adobe docs (I think you wrote it Christophe) about how to set up both the Flex and BlazeDS (Java) components for version 3.x, but how do you set up Java for version (BlazeDS) v4.x? Is it the same?
Even if I could work out how to do that – and I am hoping I can – there is absolutely nothing from Adobe on how to connect to a production database. It would be really nice if you could give us an example that does the whole thing from Flex to Java to MySQL (or whatever database you want to use as an example.) HSQLDB can’t be used in a production environment.
Please don’t take this as a personal criticism. It just seems an omission on Adobe’s part.
Thanks,
Chris
You connect to the database through your Java DAO layer – nothing to do with blazeds.
Very nice article. But I have a question.
How do we choose the way to handle multiple calls to the same service ?
I know when we use remote object, we may use “concurrency” to choose “last”, “multiple”, or “single”.
Thanks a lot.