Flex with sfAmfPlugin part 2

Today I released a new version of my sfAmfPlugin for the symfony Framework. Main focus of this release was the support of Doctrine. Now you can transfer Doctrine_Recordset- and Doctrine_Collections directly without mapping the values. As you can see in the following listing there is nothing to do for you to use this feature.

class HelloWorld extends sfAmfService {

  public function sayHello($message) {

    $result = Doctrine::getTable('Menu')->findAll();

    return $result;



So you can transfer your Doctrine classes directly to the Flex-Client.

You can find more information on the Plugin homepage.

I will keep on working on the plugin so stay tuned for upcoming changes :-)

Book Mark it-> | Reddit | Slashdot | Digg | Facebook | Technorati | Google | StumbleUpon | Windows Live | Tailrank | Furl | Netscape | Yahoo | BlinkList


Using sfAmfPlugin part 1

As I wrote in my last blog article I on my way to develop my first Symfony application with a Flex fronten. Therefore I’m developing my own Symfony plugin to handle AMF-Service-Calls from the client. For my first steps I used the AMF-PHP library what worked great but has one really big drawback: It has a GPL-License. Cause I developing in a commercial environment GPL isn’t pretty useful for a library. After some googling around a found SabreAMF. SabreAMF is also written in PHP but is more a low level library. But it is fitting my needs so i used it for the first public available version of my Symfony plugin.


Book Mark it-> | Reddit | Slashdot | Digg | Facebook | Technorati | Google | StumbleUpon | Windows Live | Tailrank | Furl | Netscape | Yahoo | BlinkList


Flex and Symfony

For a new upcoming project i was looking for the best way to implement the user interface. Currently there are more alternatives to choose from than ever in the history of developing webbased applications. The following ones were the candidates with the best chances:

1.) AJAX-Pimped HTML interface
This would have been the easiest choice. But this solution laks of a lot of features needed for modern web applications.

2.) ExtJS
I used ExtJS ( for some mid-sized projects in the last months. The quality of the library is impressive. Most of the widgets are high quality solutions. But there are some problems with ExtJS

  •   The license change to GPL offended a lot of developers and is not the best choice for enterprise applications
  •   Developing Javascript-Interfaces with ExtJS takes a lot of time and is somtimes error-prone

3.) qooxdoo
Qooxdoo ( is another JavaScript based Widget-System. Compared with ExtJS there are far less features. Development is driven by one of the largest european hosting provider. The upcoming version 0.8 looks promising but in my opinion this solution is not really ready for enterprise web applications at the moment. For example the Grid-Controll lacks a lot of features that makes the Grid of ExtJS so cool.

4.) Flex
I tried Flex some months ago (Version 2) and at that time I was impressed how easy the development was. The new Version is even better. After playing around with some smaller samples I made the decission to use Flex as a frontend. The productivity in creating the user interface is great so far. It is extensible and the development with Action-Script is pretty easy for everyone who is able to develop JavaScript. With the commercial Flex Builder the development is fast and easy.

I cross my fingers that it scales good for user interfaces of enterprise applications with many windows, masks and informations.

Symfony and Flex
Communication between flex an the backend can be done on different ways. For PHP backend AMF is the best way. Some month ago there was a AMF-Plugin for symfony but it isn’t in the plugin list anymore. So I decided to develop my own.

So far i have a first version (0.1) based on AMFPHP with basic features needed to create Services that are called in Symfony actions. Cause AMFPHP is GPL too i will replace it with another solution. Also Doctrine and Propel-Support is on my TODO-list.

So stay tuned, i will post more informations the next days.

Book Mark it-> | Reddit | Slashdot | Digg | Facebook | Technorati | Google | StumbleUpon | Windows Live | Tailrank | Furl | Netscape | Yahoo | BlinkList

Powered by WordPress | Theme: Aeros 2.0 by