SlideShare a Scribd company logo
1 of 42
Muharrem Taç Bilginç IT Academy Gelecekonline
Flex Nedir
Flex Nedir ? Macromedia’nın 2004 yılının Mart ayında duyurduğu Flash Platform tabanlı Rich Internet Application (RIA) geliştirme ortamıdır. Adobe’un Macromedia’yı almasıyla adı Adobe Flex olarak değişmiştir. Uygulama geliştirme ortamı (SDK) Windows ve Mac OS X işletim sistemlerinde çalışmaktadır ve Linux için bir çalışma da bulunmaktadır.
Flex Nedir ? Flex SDK ile geliştirilen uygulamalar SWF olarak derlenir ve Flash Plugin yüklü olan her internet tarayıcısında çalışır. Flex SDK ile sadece tarayıcı üzerinde çalışan uygulamalar değil, işletim sistemi üzerinde çalışan uygulamalar da oluşturmak mümkündür. Bu uygulamalara Adobe AIR denilmektedir. Flash Platform yüklü olan Linux ortamında da AIR çalışmaktadır.
Flex Nedir ? Flex :  Yazılım geliştirme sistemi veya geliştime kiti Flash Platform :  Sistemlere yüklenen çalışma zamanı bileşenleri  Flex Builder :  Adobe tarafından satılan Eclipse tabanlı geliştirme ortamı (yeni adı Flash Builder 4 ) Flex Builder Eclipse Plugin :  Eclipse’iniz üzerine kurulan ve Flex ortamı desteğini sağlayan pluginler bütünü as uzantılı dosyalar :  ActionScript dili ile yazılmış dosyalardır, Java dilindeki .java uzantılı dosyalar gibidir mxml uzantılı dosyalar :  Flex’e özgü arayüz tasarlama dosyalarıdır, Java EE’de kullanılan JSP dosyaları gibidir Tanımlar
Flex Nedir ? Tweetdeck Gooveshark Ünlü Flex uygulamaları
Flex Nedir ? Tour de Flex : Flex componentleri ve kullanımları hakkında harika bir  uyugulama.
Flex Builder – Flash Builder Nedir ? Flex :  Yazılım geliştirme sistemi veya geliştime kiti Flex Builder :  Adobe tarafından satılan Eclipse tabanlı geliştirme ortamı (yeni adı Flash Builder) Flex Builder 4. versiyonundan sonra Flash Builder adını aldı
Flash Builder Nedir ?
Flash Builder Nedir ?
Flash Builder Nedir ? mxml dosyaları
Flash Builder Nedir ? as dosyaları
Flash Builder Nedir ? as dosyaları
Flex Builder – Flash Builder Eclipse Plugin Nedir ? Flex Builder Eclipse Plugin :  Adobe tarafından satılan ve Eclipse üzerine kurulan pluginler bütünüdür. Eclipse’e eksiksiz olarak Flex yetenekleri kazandırır. Önemli Not :  Java & Flex entegrasyonunda en iyi çalışma ortamını böyle sağlayabilirsiniz.
Flex Builder – Flash Builder Eclipse Plugin Nedir ?
Flex Builder – Flash Builder Eclipse Plugin Nedir ? Aynı anda Java ve Flex Projesini yönetebilmek…
BlazeDS Nedir
BlazeDS Nedir Flex sunucu tarafı ile şu protokolleri kullanarak haberleşebilir: HTTP aracılığıyla çalışan HTTPService bileşeni SOAP(Simple Object Access Protocol) ile çalışan WebService bileşeni Adobe AMF(Action Message Format) ile çalışan RemoteObject bileşeni
BlazeDS Nedir BlazeDS bu formatlardan AMF için bir Java implemantasyonudur.  Adobe tarafından yazılmıştır ve Spring, Seam gibi modern Java Frameworklerde kullanılmaktadır. Flash ve  Air uygulamaları bu teknoloji ile sunucuyla veri alışverişinde bulunmaktadır. Açık kaynak kodludur ve LiveCycle Data Services adlı Adobe’un ücretli entegrasyonunun alternatifidir.
BlazeDS Spring Entegrasyonu Spring Framework açık kaynak kodlu çok büyük sistemleri idare edebilen, işleri kolaylaştırmak için çok sayıda yardımcı araçlar barındıran büyük bir Java Framework’üdür.  Spring Framework, BlazeDS ile entegrasyonu da kolaylaştırmaktadır.
BlazeDS Spring Entegrasyonu Entegrasyon için Flex ve Spring olmak üzere iki ayrı proje yapılır. Spring projesi bir web uygulaması olabilir. Eclipse Web Tools Platform’un sağladığı kolaylık kullanılabilir. Flex projesi adım adım BlazeDS ‘e uygun olarak yaratılmalıdır.
BlazeDS Spring Entegrasyonu Spring Framework kullanılan bir web uygulaması için gereken Jar’lar:
BlazeDS Spring Entegrasyonu web.xml içeriğine eklemeler <!-- Spring Context --> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener> <context-param> <param-name>contextConfigLocation</param-name>   <param-value>/WEB-INF/application-context.xml</param-value> </context-param>
BlazeDS Spring Entegrasyonu web.xml içeriğine eklemeler <!-- Spring Flex Servlet --> <servlet> <servlet-name>spring-flex</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/flex-servlet-context.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>spring-flex</servlet-name> <url-pattern>/messagebroker/*</url-pattern> </servlet-mapping>
BlazeDS Spring Entegrasyonu application-context.xml içeriği <?xml version= &quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <beans xmlns= &quot;http://www.springframework.org/schema/beans&quot; xmlns:xsi= &quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns:context=&quot;http://www.springframework.org/schema/context&quot; xsi:schemaLocation= &quot;http://www.springframework.org/schema/beans  http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context  http://www.springframework.org/schema/context/spring-context.xsd&quot; xmlns:p= &quot;http://www.springframework.org/schema/p&quot;> <bean id= &quot;userService&quot; class=&quot;com.gelecekonline.service.UserServiceImpl&quot;/> </beans>
BlazeDS Spring Entegrasyonu flex-servlet-context.xml içeriği <?xml version= &quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <beans xmlns= &quot;http://www.springframework.org/schema/beans&quot; xmlns:xsi= &quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns:p= &quot;http://www.springframework.org/schema/p&quot; xmlns:context= &quot;http://www.springframework.org/schema/context&quot; xmlns:flex= &quot;http://www.springframework.org/schema/flex&quot; xsi:schemaLocation= &quot;http://www.springframework.org/schema/beans  http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context  http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/flex http://www.springframework.org/schema/flex/spring-flex-1.0.xsd&quot;> <context:component-scan base-package= &quot;com.gelecekonline.service&quot; /> <flex:message-broker/> <flex:remoting-destination ref= &quot;userService&quot; /> </beans>
BlazeDS Spring Entegrasyonu services-config.xml içeriği -1  <?xml version= &quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <services-config> <services> <default-channels> <channel ref= &quot;user-amf&quot;/> </default-channels> </services> <channels> <channel-definition id= &quot;user-amf&quot; class=&quot;mx.messaging.channels.AMFChannel&quot;> <endpoint url= &quot;http://{server.name}:{server.port}/{context.root}/messagebroker/useramf&quot;  class= &quot;flex.messaging.endpoints.AMFEndpoint&quot;/> </channel-definition> </channels>
BlazeDS Spring Entegrasyonu services-config.xml içeriği -2 <logging> <target class= &quot;flex.messaging.log.ConsoleTarget&quot; level=&quot;Info&quot;> <properties> <prefix>[BlazeDS] </prefix> <includeDate>false</includeDate> <includeTime>false</includeTime> <includeLevel>false</includeLevel> <includeCategory>false</includeCategory> </properties> <filters> <pattern>Endpoint.*</pattern> <pattern>Service.*</pattern> <pattern>Configuration</pattern> </filters> </target> </logging> </services-config>
BlazeDS Spring Entegrasyonu Blaze DS uyumlu – Flex Projesi yaratma
BlazeDS Spring Entegrasyonu Blaze DS uyumlu – Flex Projesi yaratma
BlazeDS Spring Entegrasyonu Blaze DS uyumlu – Flex Projesi yaratma
BlazeDS Spring Entegrasyonu Blaze DS uyumlu – Flex Projesi Spring Web Projesi
BlazeDS Spring Entegrasyonu Flex tarafında mxml dosyası içeriği. Remote Call kısmı: <fx:Declarations> <s:AMFChannel id=&quot;useramf&quot; uri=&quot;../messagebroker/useramf&quot;/> <s:ChannelSet id=&quot;channelSet&quot; channels=&quot;{[ useramf]}&quot;/> <s:RemoteObject id=&quot;remoteObject&quot; destination=&quot;userService&quot; channelSet=&quot;{channelSet}&quot;/> </fx:Declarations>
BlazeDS Spring Entegrasyonu Flex tarafında as model objesi: package com.gelecekonline.model { [ RemoteClass(alias=&quot;com.gelecekonline.User&quot;)] public class User { public var name:String; public var lastName:String; public function User() { } } }
BlazeDS Spring Entegrasyonu Flex tarafında mxml dosyası içeriği. Remote Call kısmı: <fx:Declarations> <s:AMFChannel id=&quot;useramf&quot; uri=&quot;../messagebroker/useramf&quot;/> <s:ChannelSet id=&quot;channelSet&quot; channels=&quot;{[ useramf]}&quot;/> <s:RemoteObject id=&quot;remoteObject&quot; destination=&quot;userService&quot; channelSet=&quot;{channelSet}&quot;/> </fx:Declarations>
BlazeDS Spring Entegrasyonu Flex tarafında mxml dosyası içeriği. Remote Object kullanan method: protected function button1_clickHandler(event:MouseEvent):void { remoteObject.addEventListener(ResultEvent.RESULT,resultHandler); remoteObject.addEventListener(FaultEvent.FAULT,faultHandler); //Spring tarafindaki method remoteObject.getUserList();  }
BlazeDS Spring Entegrasyonu Flex tarafında mxml dosyası içeriği. Remote Object  başarılı sonuç dönerse (asenkron ilerleme): private function resultHandler(event:ResultEvent):void{ var userList:ArrayCollection = event.message.body as ArrayCollection; UserDataGrid.dataProvider = userList; }
BlazeDS Spring Entegrasyonu Flex tarafında mxml dosyası içeriği. Remote Object  hatalı sonuç dönerse (asenkron ilerleme): private function faultHandler(event:FaultEvent):void{ Alert.show( &quot;Hata&quot; + event.message.toString()); }
BlazeDS Spring Entegrasyonu Flex tarafında mxml dosyası içeriği. Remote Object  hatalı sonuç dönerse (asenkron ilerleme): private function faultHandler(event:FaultEvent):void{ Alert.show( &quot;Hata&quot; + event.message.toString()); }
BlazeDS Spring Entegrasyonu Flex tarafında mxml dosyası içeriği. DataGrid ve Button  <s:Button x=&quot;63&quot; y=&quot;42&quot; label=&quot;Kullanıcı Listele&quot; click=&quot;button1_clickHandler(event)&quot;/> <mx:DataGrid x=&quot;63&quot; y=&quot;117&quot; id=&quot;UserDataGrid&quot;/>
Kaynakça: http://www.adobe.com/products/flex/   http://www.springsource.org/spring-flex
Teşekkürler

More Related Content

Viewers also liked

Açık Dergi Sistemleri Yazar Rehberi - BOZOK TIP DERGİSİ
Açık Dergi Sistemleri Yazar Rehberi - BOZOK TIP DERGİSİAçık Dergi Sistemleri Yazar Rehberi - BOZOK TIP DERGİSİ
Açık Dergi Sistemleri Yazar Rehberi - BOZOK TIP DERGİSİİbrahim Bayraktar
 
Android Teknolojileri
Android TeknolojileriAndroid Teknolojileri
Android TeknolojileriMuharrem Tac
 
Python ve Django'da Test'le Yürüyen Geliştirme
Python ve Django'da Test'le Yürüyen GeliştirmePython ve Django'da Test'le Yürüyen Geliştirme
Python ve Django'da Test'le Yürüyen GeliştirmeUğur Özyılmazel
 
Mobil Teknolojiler
Mobil TeknolojilerMobil Teknolojiler
Mobil TeknolojilerMuharrem Tac
 
Webcar - Arduino Yun ile Webden yönetilen oyuncak araç
Webcar - Arduino Yun ile Webden yönetilen oyuncak araçWebcar - Arduino Yun ile Webden yönetilen oyuncak araç
Webcar - Arduino Yun ile Webden yönetilen oyuncak araçMuharrem Tac
 
Processing - Programcılar için eskiz defteri
Processing - Programcılar için eskiz defteriProcessing - Programcılar için eskiz defteri
Processing - Programcılar için eskiz defteriFatih Erikli
 
Karmaşık Ağlar ve NetworkX
Karmaşık Ağlar ve NetworkXKarmaşık Ağlar ve NetworkX
Karmaşık Ağlar ve NetworkXFatih Erikli
 

Viewers also liked (20)

Açık Dergi Sistemleri Yazar Rehberi - BOZOK TIP DERGİSİ
Açık Dergi Sistemleri Yazar Rehberi - BOZOK TIP DERGİSİAçık Dergi Sistemleri Yazar Rehberi - BOZOK TIP DERGİSİ
Açık Dergi Sistemleri Yazar Rehberi - BOZOK TIP DERGİSİ
 
CVS
CVSCVS
CVS
 
HTML5 ve Phonegap
HTML5  ve PhonegapHTML5  ve Phonegap
HTML5 ve Phonegap
 
Yazilimci kimdir?
Yazilimci kimdir?Yazilimci kimdir?
Yazilimci kimdir?
 
Google App Engine
Google App EngineGoogle App Engine
Google App Engine
 
Android Teknolojileri
Android TeknolojileriAndroid Teknolojileri
Android Teknolojileri
 
Java EE Struts
Java EE StrutsJava EE Struts
Java EE Struts
 
Spring Android
Spring AndroidSpring Android
Spring Android
 
Python ve Django'da Test'le Yürüyen Geliştirme
Python ve Django'da Test'le Yürüyen GeliştirmePython ve Django'da Test'le Yürüyen Geliştirme
Python ve Django'da Test'le Yürüyen Geliştirme
 
Liferay
LiferayLiferay
Liferay
 
Vagrant 101
Vagrant 101Vagrant 101
Vagrant 101
 
Tizen
TizenTizen
Tizen
 
Eclipse
EclipseEclipse
Eclipse
 
Ruby ile tanışma!
Ruby ile tanışma!Ruby ile tanışma!
Ruby ile tanışma!
 
Mobil Teknolojiler
Mobil TeknolojilerMobil Teknolojiler
Mobil Teknolojiler
 
Webcar - Arduino Yun ile Webden yönetilen oyuncak araç
Webcar - Arduino Yun ile Webden yönetilen oyuncak araçWebcar - Arduino Yun ile Webden yönetilen oyuncak araç
Webcar - Arduino Yun ile Webden yönetilen oyuncak araç
 
Processing - Programcılar için eskiz defteri
Processing - Programcılar için eskiz defteriProcessing - Programcılar için eskiz defteri
Processing - Programcılar için eskiz defteri
 
Spring Framework
Spring FrameworkSpring Framework
Spring Framework
 
NEO4J
NEO4JNEO4J
NEO4J
 
Karmaşık Ağlar ve NetworkX
Karmaşık Ağlar ve NetworkXKarmaşık Ağlar ve NetworkX
Karmaşık Ağlar ve NetworkX
 

Similar to Flex blaze ds

Android Üzerinde Adobe Flex ve AIR ile Yazılım Geliştirme
Android Üzerinde Adobe Flex ve AIR ile Yazılım GeliştirmeAndroid Üzerinde Adobe Flex ve AIR ile Yazılım Geliştirme
Android Üzerinde Adobe Flex ve AIR ile Yazılım GeliştirmeMuharrem Tac
 
Silk Test Framework Kurulumu ve Yazılım Test Otomasyon Mimarisine Giriş
Silk Test Framework Kurulumu ve Yazılım Test Otomasyon Mimarisine GirişSilk Test Framework Kurulumu ve Yazılım Test Otomasyon Mimarisine Giriş
Silk Test Framework Kurulumu ve Yazılım Test Otomasyon Mimarisine GirişBurak AVCI, MEM, PSM I®
 
ASP.NET MVC'den ASP.NET Core'a Geçiş
ASP.NET MVC'den ASP.NET Core'a GeçişASP.NET MVC'den ASP.NET Core'a Geçiş
ASP.NET MVC'den ASP.NET Core'a GeçişSinan Bozkuş
 
Spring Web Service
Spring Web ServiceSpring Web Service
Spring Web Servicedasgin
 
Yazılım Geliştirme Teknolojileri
Yazılım Geliştirme TeknolojileriYazılım Geliştirme Teknolojileri
Yazılım Geliştirme TeknolojileriYusuf AYTİN
 
2010 Kocaeli Linux Günleri - Linux Web Geliştiriciliği
2010 Kocaeli Linux Günleri - Linux Web Geliştiriciliği2010 Kocaeli Linux Günleri - Linux Web Geliştiriciliği
2010 Kocaeli Linux Günleri - Linux Web GeliştiriciliğiBurak Oğuz
 
Yazılım Geliştiriciler İçin Sharepoint 2010
Yazılım Geliştiriciler İçin Sharepoint 2010Yazılım Geliştiriciler İçin Sharepoint 2010
Yazılım Geliştiriciler İçin Sharepoint 2010Evren Ayan
 
İleri Seviye T-SQL Programlama - Chapter 21
İleri Seviye T-SQL Programlama - Chapter 21İleri Seviye T-SQL Programlama - Chapter 21
İleri Seviye T-SQL Programlama - Chapter 21Cihan Özhan
 
Internet programcılığı 1
Internet programcılığı 1Internet programcılığı 1
Internet programcılığı 1Erol Dizdar
 
cofaso Kullanım Kılavuzu
cofaso Kullanım Kılavuzucofaso Kullanım Kılavuzu
cofaso Kullanım KılavuzuVitorCordova
 
Mutant Web Applications
Mutant Web ApplicationsMutant Web Applications
Mutant Web Applicationsguest096801
 
Temel Düzeyde Visual Studio Eğitimleri
Temel Düzeyde Visual Studio EğitimleriTemel Düzeyde Visual Studio Eğitimleri
Temel Düzeyde Visual Studio EğitimleriUniverist
 
Temel Düzeyde MySQL ve PHP Eğitimleri 1
Temel Düzeyde MySQL ve PHP Eğitimleri 1Temel Düzeyde MySQL ve PHP Eğitimleri 1
Temel Düzeyde MySQL ve PHP Eğitimleri 1Univerist
 
F5 dergisi
F5 dergisiF5 dergisi
F5 dergisifatos11
 
WEB SERVİCE
WEB SERVİCE WEB SERVİCE
WEB SERVİCE AliMETN
 
PHP'ye Giriş
PHP'ye GirişPHP'ye Giriş
PHP'ye Girişefedincer
 

Similar to Flex blaze ds (20)

Android Üzerinde Adobe Flex ve AIR ile Yazılım Geliştirme
Android Üzerinde Adobe Flex ve AIR ile Yazılım GeliştirmeAndroid Üzerinde Adobe Flex ve AIR ile Yazılım Geliştirme
Android Üzerinde Adobe Flex ve AIR ile Yazılım Geliştirme
 
Silk Test Framework Kurulumu ve Yazılım Test Otomasyon Mimarisine Giriş
Silk Test Framework Kurulumu ve Yazılım Test Otomasyon Mimarisine GirişSilk Test Framework Kurulumu ve Yazılım Test Otomasyon Mimarisine Giriş
Silk Test Framework Kurulumu ve Yazılım Test Otomasyon Mimarisine Giriş
 
ASP.NET MVC'den ASP.NET Core'a Geçiş
ASP.NET MVC'den ASP.NET Core'a GeçişASP.NET MVC'den ASP.NET Core'a Geçiş
ASP.NET MVC'den ASP.NET Core'a Geçiş
 
Spring Web Service
Spring Web ServiceSpring Web Service
Spring Web Service
 
Yazılım Geliştirme Teknolojileri
Yazılım Geliştirme TeknolojileriYazılım Geliştirme Teknolojileri
Yazılım Geliştirme Teknolojileri
 
2010 Kocaeli Linux Günleri - Linux Web Geliştiriciliği
2010 Kocaeli Linux Günleri - Linux Web Geliştiriciliği2010 Kocaeli Linux Günleri - Linux Web Geliştiriciliği
2010 Kocaeli Linux Günleri - Linux Web Geliştiriciliği
 
Yazılım Geliştiriciler İçin Sharepoint 2010
Yazılım Geliştiriciler İçin Sharepoint 2010Yazılım Geliştiriciler İçin Sharepoint 2010
Yazılım Geliştiriciler İçin Sharepoint 2010
 
İleri Seviye T-SQL Programlama - Chapter 21
İleri Seviye T-SQL Programlama - Chapter 21İleri Seviye T-SQL Programlama - Chapter 21
İleri Seviye T-SQL Programlama - Chapter 21
 
Internet programcılığı 1
Internet programcılığı 1Internet programcılığı 1
Internet programcılığı 1
 
cofaso Kullanım Kılavuzu
cofaso Kullanım Kılavuzucofaso Kullanım Kılavuzu
cofaso Kullanım Kılavuzu
 
Mutant Web Applications
Mutant Web ApplicationsMutant Web Applications
Mutant Web Applications
 
Temel Düzeyde Visual Studio Eğitimleri
Temel Düzeyde Visual Studio EğitimleriTemel Düzeyde Visual Studio Eğitimleri
Temel Düzeyde Visual Studio Eğitimleri
 
Flex
FlexFlex
Flex
 
Temel Düzeyde MySQL ve PHP Eğitimleri 1
Temel Düzeyde MySQL ve PHP Eğitimleri 1Temel Düzeyde MySQL ve PHP Eğitimleri 1
Temel Düzeyde MySQL ve PHP Eğitimleri 1
 
Sunu (1)
Sunu (1)Sunu (1)
Sunu (1)
 
.Net Core sunum
.Net Core sunum.Net Core sunum
.Net Core sunum
 
Wordpress
WordpressWordpress
Wordpress
 
F5 dergisi
F5 dergisiF5 dergisi
F5 dergisi
 
WEB SERVİCE
WEB SERVİCE WEB SERVİCE
WEB SERVİCE
 
PHP'ye Giriş
PHP'ye GirişPHP'ye Giriş
PHP'ye Giriş
 

Flex blaze ds

  • 1. Muharrem Taç Bilginç IT Academy Gelecekonline
  • 3. Flex Nedir ? Macromedia’nın 2004 yılının Mart ayında duyurduğu Flash Platform tabanlı Rich Internet Application (RIA) geliştirme ortamıdır. Adobe’un Macromedia’yı almasıyla adı Adobe Flex olarak değişmiştir. Uygulama geliştirme ortamı (SDK) Windows ve Mac OS X işletim sistemlerinde çalışmaktadır ve Linux için bir çalışma da bulunmaktadır.
  • 4. Flex Nedir ? Flex SDK ile geliştirilen uygulamalar SWF olarak derlenir ve Flash Plugin yüklü olan her internet tarayıcısında çalışır. Flex SDK ile sadece tarayıcı üzerinde çalışan uygulamalar değil, işletim sistemi üzerinde çalışan uygulamalar da oluşturmak mümkündür. Bu uygulamalara Adobe AIR denilmektedir. Flash Platform yüklü olan Linux ortamında da AIR çalışmaktadır.
  • 5. Flex Nedir ? Flex : Yazılım geliştirme sistemi veya geliştime kiti Flash Platform : Sistemlere yüklenen çalışma zamanı bileşenleri Flex Builder : Adobe tarafından satılan Eclipse tabanlı geliştirme ortamı (yeni adı Flash Builder 4 ) Flex Builder Eclipse Plugin : Eclipse’iniz üzerine kurulan ve Flex ortamı desteğini sağlayan pluginler bütünü as uzantılı dosyalar : ActionScript dili ile yazılmış dosyalardır, Java dilindeki .java uzantılı dosyalar gibidir mxml uzantılı dosyalar : Flex’e özgü arayüz tasarlama dosyalarıdır, Java EE’de kullanılan JSP dosyaları gibidir Tanımlar
  • 6. Flex Nedir ? Tweetdeck Gooveshark Ünlü Flex uygulamaları
  • 7. Flex Nedir ? Tour de Flex : Flex componentleri ve kullanımları hakkında harika bir uyugulama.
  • 8. Flex Builder – Flash Builder Nedir ? Flex : Yazılım geliştirme sistemi veya geliştime kiti Flex Builder : Adobe tarafından satılan Eclipse tabanlı geliştirme ortamı (yeni adı Flash Builder) Flex Builder 4. versiyonundan sonra Flash Builder adını aldı
  • 11. Flash Builder Nedir ? mxml dosyaları
  • 12. Flash Builder Nedir ? as dosyaları
  • 13. Flash Builder Nedir ? as dosyaları
  • 14. Flex Builder – Flash Builder Eclipse Plugin Nedir ? Flex Builder Eclipse Plugin : Adobe tarafından satılan ve Eclipse üzerine kurulan pluginler bütünüdür. Eclipse’e eksiksiz olarak Flex yetenekleri kazandırır. Önemli Not : Java & Flex entegrasyonunda en iyi çalışma ortamını böyle sağlayabilirsiniz.
  • 15. Flex Builder – Flash Builder Eclipse Plugin Nedir ?
  • 16. Flex Builder – Flash Builder Eclipse Plugin Nedir ? Aynı anda Java ve Flex Projesini yönetebilmek…
  • 18. BlazeDS Nedir Flex sunucu tarafı ile şu protokolleri kullanarak haberleşebilir: HTTP aracılığıyla çalışan HTTPService bileşeni SOAP(Simple Object Access Protocol) ile çalışan WebService bileşeni Adobe AMF(Action Message Format) ile çalışan RemoteObject bileşeni
  • 19. BlazeDS Nedir BlazeDS bu formatlardan AMF için bir Java implemantasyonudur. Adobe tarafından yazılmıştır ve Spring, Seam gibi modern Java Frameworklerde kullanılmaktadır. Flash ve Air uygulamaları bu teknoloji ile sunucuyla veri alışverişinde bulunmaktadır. Açık kaynak kodludur ve LiveCycle Data Services adlı Adobe’un ücretli entegrasyonunun alternatifidir.
  • 20. BlazeDS Spring Entegrasyonu Spring Framework açık kaynak kodlu çok büyük sistemleri idare edebilen, işleri kolaylaştırmak için çok sayıda yardımcı araçlar barındıran büyük bir Java Framework’üdür. Spring Framework, BlazeDS ile entegrasyonu da kolaylaştırmaktadır.
  • 21. BlazeDS Spring Entegrasyonu Entegrasyon için Flex ve Spring olmak üzere iki ayrı proje yapılır. Spring projesi bir web uygulaması olabilir. Eclipse Web Tools Platform’un sağladığı kolaylık kullanılabilir. Flex projesi adım adım BlazeDS ‘e uygun olarak yaratılmalıdır.
  • 22. BlazeDS Spring Entegrasyonu Spring Framework kullanılan bir web uygulaması için gereken Jar’lar:
  • 23. BlazeDS Spring Entegrasyonu web.xml içeriğine eklemeler <!-- Spring Context --> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/application-context.xml</param-value> </context-param>
  • 24. BlazeDS Spring Entegrasyonu web.xml içeriğine eklemeler <!-- Spring Flex Servlet --> <servlet> <servlet-name>spring-flex</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/flex-servlet-context.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>spring-flex</servlet-name> <url-pattern>/messagebroker/*</url-pattern> </servlet-mapping>
  • 25. BlazeDS Spring Entegrasyonu application-context.xml içeriği <?xml version= &quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <beans xmlns= &quot;http://www.springframework.org/schema/beans&quot; xmlns:xsi= &quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns:context=&quot;http://www.springframework.org/schema/context&quot; xsi:schemaLocation= &quot;http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd&quot; xmlns:p= &quot;http://www.springframework.org/schema/p&quot;> <bean id= &quot;userService&quot; class=&quot;com.gelecekonline.service.UserServiceImpl&quot;/> </beans>
  • 26. BlazeDS Spring Entegrasyonu flex-servlet-context.xml içeriği <?xml version= &quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <beans xmlns= &quot;http://www.springframework.org/schema/beans&quot; xmlns:xsi= &quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns:p= &quot;http://www.springframework.org/schema/p&quot; xmlns:context= &quot;http://www.springframework.org/schema/context&quot; xmlns:flex= &quot;http://www.springframework.org/schema/flex&quot; xsi:schemaLocation= &quot;http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/flex http://www.springframework.org/schema/flex/spring-flex-1.0.xsd&quot;> <context:component-scan base-package= &quot;com.gelecekonline.service&quot; /> <flex:message-broker/> <flex:remoting-destination ref= &quot;userService&quot; /> </beans>
  • 27. BlazeDS Spring Entegrasyonu services-config.xml içeriği -1 <?xml version= &quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <services-config> <services> <default-channels> <channel ref= &quot;user-amf&quot;/> </default-channels> </services> <channels> <channel-definition id= &quot;user-amf&quot; class=&quot;mx.messaging.channels.AMFChannel&quot;> <endpoint url= &quot;http://{server.name}:{server.port}/{context.root}/messagebroker/useramf&quot; class= &quot;flex.messaging.endpoints.AMFEndpoint&quot;/> </channel-definition> </channels>
  • 28. BlazeDS Spring Entegrasyonu services-config.xml içeriği -2 <logging> <target class= &quot;flex.messaging.log.ConsoleTarget&quot; level=&quot;Info&quot;> <properties> <prefix>[BlazeDS] </prefix> <includeDate>false</includeDate> <includeTime>false</includeTime> <includeLevel>false</includeLevel> <includeCategory>false</includeCategory> </properties> <filters> <pattern>Endpoint.*</pattern> <pattern>Service.*</pattern> <pattern>Configuration</pattern> </filters> </target> </logging> </services-config>
  • 29. BlazeDS Spring Entegrasyonu Blaze DS uyumlu – Flex Projesi yaratma
  • 30. BlazeDS Spring Entegrasyonu Blaze DS uyumlu – Flex Projesi yaratma
  • 31. BlazeDS Spring Entegrasyonu Blaze DS uyumlu – Flex Projesi yaratma
  • 32. BlazeDS Spring Entegrasyonu Blaze DS uyumlu – Flex Projesi Spring Web Projesi
  • 33. BlazeDS Spring Entegrasyonu Flex tarafında mxml dosyası içeriği. Remote Call kısmı: <fx:Declarations> <s:AMFChannel id=&quot;useramf&quot; uri=&quot;../messagebroker/useramf&quot;/> <s:ChannelSet id=&quot;channelSet&quot; channels=&quot;{[ useramf]}&quot;/> <s:RemoteObject id=&quot;remoteObject&quot; destination=&quot;userService&quot; channelSet=&quot;{channelSet}&quot;/> </fx:Declarations>
  • 34. BlazeDS Spring Entegrasyonu Flex tarafında as model objesi: package com.gelecekonline.model { [ RemoteClass(alias=&quot;com.gelecekonline.User&quot;)] public class User { public var name:String; public var lastName:String; public function User() { } } }
  • 35. BlazeDS Spring Entegrasyonu Flex tarafında mxml dosyası içeriği. Remote Call kısmı: <fx:Declarations> <s:AMFChannel id=&quot;useramf&quot; uri=&quot;../messagebroker/useramf&quot;/> <s:ChannelSet id=&quot;channelSet&quot; channels=&quot;{[ useramf]}&quot;/> <s:RemoteObject id=&quot;remoteObject&quot; destination=&quot;userService&quot; channelSet=&quot;{channelSet}&quot;/> </fx:Declarations>
  • 36. BlazeDS Spring Entegrasyonu Flex tarafında mxml dosyası içeriği. Remote Object kullanan method: protected function button1_clickHandler(event:MouseEvent):void { remoteObject.addEventListener(ResultEvent.RESULT,resultHandler); remoteObject.addEventListener(FaultEvent.FAULT,faultHandler); //Spring tarafindaki method remoteObject.getUserList(); }
  • 37. BlazeDS Spring Entegrasyonu Flex tarafında mxml dosyası içeriği. Remote Object başarılı sonuç dönerse (asenkron ilerleme): private function resultHandler(event:ResultEvent):void{ var userList:ArrayCollection = event.message.body as ArrayCollection; UserDataGrid.dataProvider = userList; }
  • 38. BlazeDS Spring Entegrasyonu Flex tarafında mxml dosyası içeriği. Remote Object hatalı sonuç dönerse (asenkron ilerleme): private function faultHandler(event:FaultEvent):void{ Alert.show( &quot;Hata&quot; + event.message.toString()); }
  • 39. BlazeDS Spring Entegrasyonu Flex tarafında mxml dosyası içeriği. Remote Object hatalı sonuç dönerse (asenkron ilerleme): private function faultHandler(event:FaultEvent):void{ Alert.show( &quot;Hata&quot; + event.message.toString()); }
  • 40. BlazeDS Spring Entegrasyonu Flex tarafında mxml dosyası içeriği. DataGrid ve Button <s:Button x=&quot;63&quot; y=&quot;42&quot; label=&quot;Kullanıcı Listele&quot; click=&quot;button1_clickHandler(event)&quot;/> <mx:DataGrid x=&quot;63&quot; y=&quot;117&quot; id=&quot;UserDataGrid&quot;/>
  • 41. Kaynakça: http://www.adobe.com/products/flex/ http://www.springsource.org/spring-flex