The Spring of Adobe Flex Remoting

2,961 views
2,893 views

Published on

Flex Remoting Spring Security Exception Service Java

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,961
On SlideShare
0
From Embeds
0
Number of Embeds
585
Actions
Shares
0
Downloads
86
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

The Spring of Adobe Flex Remoting

  1. 1. The Spring of Adobe Flex Remoting ® http://www.flickr.com/photos/wisdoc/431285814/ Copyright 2008 Adobe Systems Incorporated. All rights reserved.
  2. 2. François Le Droff “Just another Java guy” Adobe Technology and Service Innovation 10 ans d’expérience (web 1+n.0) OSS geek : contributeur sur qsos, xradar , leader du projet fna, membre de l’ossgtp, du ParisJUG, et ParisJBUG conférencier à MAX, et Solution Linux blogs : http://www.droff.com http://blogs.adobe.com/francoisledroff/ ledroff@adobe.com ® Copyright 2008 Adobe Systems Incorporated. All rights reserved.
  3. 3. Spring & Flex Remoting Spring & Flex : Avant : SpringFactory Maintenant : Spring-flex 1.0.0-RELEASE http://www.springsource.org/spring-flex LCDS Spring : à suivre… ® Copyright 2008 Adobe Systems Incorporated. All rights reserved.
  4. 4. Flex Remoting http://blog.xebia.fr/2008/09/16/blazeds/ ® Copyright 2008 Adobe Systems Incorporated. All rights reserved.
  5. 5. Spring et Flex Remoting Par défaut, « Flex Remoting » instancie et de gére le cycle de vie des remote objects définis dans le fichier de configuration remoting-config.xml. La philosophie de Spring IoC est de laisser le conteneur instancier les composants ( et d’injecter leurs dépendances). La clef d’intégration de Spring et « Flex Remoting » , donc, est de trouver le meilleur moyen d’exposer des « Flex Remoting » services , tout en laissant le conteneur Spring gérer la configuration, la sécurité, l’instanciation, et le cycle de vie des implémentation (legacy ou pas) des ces services. ® Copyright 2008 Adobe Systems Incorporated. All rights reserved.
  6. 6. Flex Remoting + Spring Factory ® Copyright 2008 Adobe Systems Incorporated. All rights reserved.
  7. 7. Ancienne approche: Spring factory Le rôle de la factory est de fournir des instances d’objets prêts à l’emploi à BlazeDS, plutôt que de laisser BlazeDS instancier les composants. Pour créer une factory, il faut créer une classes qui implémente l’interface flex.messaging.FlexFactory, et implémenter la méthode lookup() utilisée par BlazeDS pour obtenir une instance d’un remote object. Enregistrer la factory Spring dans le fichier de configuration services-config.xml : 1.<factories> 2.<factory id="spring" class="flex.samples.factories.SpringFactory"/> 3.</factories> Configurer la destination pour qu’elle utilise la factory: 1.<destination id="myService"> 2.<properties> 3.<factory>spring</factory> 4.<source>myBean</source> 5.</properties> 6.</destination> ® Copyright 2008 Adobe Systems Incorporated. All rights reserved.
  8. 8. Spring-Factory: Les limites L’approche par lookup de dépendances décrites ci-dessus est en désaccord avec l’approche de Spring (injection de dépendance). Les objets doivent être configurés deux fois : une première fois dans le fichier remoting-config.xml de BlazeDS, et une fois de plus dans le fichier Spring de contexte de l’application. L’intégration se limite à du remoting basique et ne couvre pas d’autres aspects importants comme la sécurité et le messaging. ® Copyright 2008 Adobe Systems Incorporated. All rights reserved.
  9. 9. Spring-Flex AMF Broker Service Spring Spring ® Copyright 2008 Adobe Systems Incorporated. All rights reserved.
  10. 10. Spring-Flex : Projet d’intégration avec SpringSource Le MessageBroker, clef de voute du moteur de LCDS, est configuré comme un bean géré par Spring et n’a plus besoin d’être configuré dans le fichier web.xml Les messages Flex sont routés vers le MessageBroker à travers le DispatcherServlet de Spring Les RemoteObjects sont configurés « à la de Spring » Intégration de Spring Security « Exception translators » ® Copyright 2008 Adobe Systems Incorporated. All rights reserved.
  11. 11. Spring-Flex Demo & Revue de Code : http://fna.googlecode.com/svn/trunk/fna/samples/riveria_ju g/spring_flex_todo/ http://www.gnu.org/licenses/lgpl.html ® Copyright 2008 Adobe Systems Incorporated. All rights reserved.
  12. 12. A few magic details : Spring AutoWiring With a simple SpringFactory (and/or JavaAdapter) approach, you need to configure each new Java remote object service in remoting-config.xml. @RemotingDestination (JDK5 annotation) allows you to autowire Spring beans directly into BlazeDS. ® Copyright 2008 Adobe Systems Incorporated. All rights reserved.
  13. 13. A few magic details : Application Context ® Copyright 2008 Adobe Systems Incorporated. All rights reserved.
  14. 14. client side ® Copyright 2008 Adobe Systems Incorporated. All rights reserved.
  15. 15. Questions ? ® Copyright 2008 Adobe Systems Incorporated. All rights reserved.

×