SlideShare a Scribd company logo
1 of 23
Flex 3 & Webservices
Cristian Ivascu :: Adobe
360 Flex, Milan
08 – APR - 2008

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

1
Agenda


Introduction to Flex and web services



Building a SOAP-based app



REST services



Building a del.icio.us based app



Q&A

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

2
One server, multiple, disparate clients

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

3
What are webservices?
W3C says:
“a software system designed to support interoperable Machine to Machine
interaction over a network” (W3C)

In practice:
web apis that are accessed remotely

Practice matters!
Copyright 2008 Adobe Systems Incorporated. All rights reserved.

4
Web services – which one?


SOAP & WSDL



Verbose





Machine usable

Enterprise

REST


Light-weight



No encoding



popular!

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

5
Flex and Webservices



Flex creates rich clients;



Web services bring data to the client



Flex works with web services in an easy manner

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

6
WSDL sample - VideoSearch

•

Only one operation

•

Simple request parameters

•

Slightly complex response

•

Link: http://localhost/video.wsdl

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

7
How to access the service?



At runtime



At development time (via tool support)

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

8
Runtime Demo


Let’s see it in the Builder!

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

9
When to use it
•

Dynamic scenarios

•

Discovery of services at run-time

•

Services that may change more often

Characteristics
•

Not tied to a particular implementation

•

Very flexible

•

Adapts easily to changes, without messing with the code

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

10
What about this?

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

11
Dev-time way
Why?
•

For the more static scenarios – build and forget

•

For increased productivity

•

To make it easier

How?
•

Added classes to model the wsdl contents

•

Added a way to link types in wsdl to AS classes

•

Tool support & code generation

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

12
Video Search Demo redone


The same Video Searching app re-done to take
advantage of the new features.,



Let’s see how it’s made.

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

13
Generated code – is this spaghetti?

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

14
How to find and fix problems


Check if the schema is there



Breakpoints in call() and processResult()



Check type mappings & wsdl type

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

15
Known issues with the generated code


We don’t support everything – only WS-I 1.0 profile;
wsdl 1.0 & soap 1.1



Known issues – there are a few



Have one? Report it @ bugs.adobe.com/flex

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

16
REST


Can use multiple output formats – XML, JSON, etc



Is very light-weight





Pro: performance
Con: there is no typing info!

Is very popular

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

17
Flex & Rest services


They haven’t change much



AS allows manipulation of XML and binding to objects



But there’s a catch – httpservice.xmlDecode() + a custom model

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

18
DEMO – del.icio.us API usage


xmlDecode to convert raw xml into an array of “Post.as” instances



There is also a more generic approach – using SimpleXMLDecoder &
ObjectTranslator

http://booleanbetrayal.com/2007/05/18/httpservice-xmldecode-objecttranslator-an

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

19
Flex | Final words of wisdom


Web services are a way of getting data into your Flex app;



When building rich clients you need to use them



Web services in Flex can be better; for suggestions or bugs visit:

bugs.adobe.com/flex

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

20
Q&A

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

21
This is (almost) the last slide
•

Flex can cope with both dynamic and strong-typed web service usage.

•

The wizard only generates some code for you. Tweak it!

•

Strong types are not for WSDL only. Use XMLDecode() .

Copyright 2008 Adobe Systems Incorporated. All rights reserved.

22
Go play!

http://adobe.com/go/flex
…and off to lunch! Buon
appetito!
Copyright 2008 Adobe Systems Incorporated. All rights reserved.

23

More Related Content

What's hot

Node.JS Vs PHP: Which Is The Top Server-Side Programming Language?
Node.JS Vs PHP: Which Is The Top Server-Side Programming Language?Node.JS Vs PHP: Which Is The Top Server-Side Programming Language?
Node.JS Vs PHP: Which Is The Top Server-Side Programming Language?Pixel Crayons
 
Cultivating an eco system of success
Cultivating an eco system of success Cultivating an eco system of success
Cultivating an eco system of success Kemp
 
Cloud CMS presentation at Harvard Digital Publishing Collaborative - Dec 2015
Cloud CMS presentation at Harvard Digital Publishing Collaborative - Dec 2015Cloud CMS presentation at Harvard Digital Publishing Collaborative - Dec 2015
Cloud CMS presentation at Harvard Digital Publishing Collaborative - Dec 2015Cloud CMS
 
Why Domain-Driven Design and Reactive Programming?
Why Domain-Driven Design and Reactive Programming?Why Domain-Driven Design and Reactive Programming?
Why Domain-Driven Design and Reactive Programming?VMware Tanzu
 
apidays LIVE London 2021 - Rethink API Troubleshooting to Deliver Value by Sa...
apidays LIVE London 2021 - Rethink API Troubleshooting to Deliver Value by Sa...apidays LIVE London 2021 - Rethink API Troubleshooting to Deliver Value by Sa...
apidays LIVE London 2021 - Rethink API Troubleshooting to Deliver Value by Sa...apidays
 
How to Build Front-End Web Apps that Scale - FutureJS
How to Build Front-End Web Apps that Scale - FutureJSHow to Build Front-End Web Apps that Scale - FutureJS
How to Build Front-End Web Apps that Scale - FutureJSPhil Leggetter
 
Fed London - January 2015
Fed London - January 2015Fed London - January 2015
Fed London - January 2015Phil Leggetter
 
Scribe online 03 scribe online cdk and api overview
Scribe online 03   scribe online cdk and api overviewScribe online 03   scribe online cdk and api overview
Scribe online 03 scribe online cdk and api overviewScribe Software Corp.
 
O'Reilly ETech Conference: Laszlo RIA
O'Reilly ETech Conference: Laszlo RIAO'Reilly ETech Conference: Laszlo RIA
O'Reilly ETech Conference: Laszlo RIAOliver Steele
 
Integration patterns and practices for cloud and mobile computing
Integration patterns and practices for cloud and mobile computingIntegration patterns and practices for cloud and mobile computing
Integration patterns and practices for cloud and mobile computingSHAKIL AKHTAR
 
Will the Real Public API Please Stand Up? Amir Zuker
Will the Real Public API Please Stand Up? Amir ZukerWill the Real Public API Please Stand Up? Amir Zuker
Will the Real Public API Please Stand Up? Amir ZukerCodeValue
 
Integrating cloud with existing IBM Systems
Integrating cloud with existing IBM SystemsIntegrating cloud with existing IBM Systems
Integrating cloud with existing IBM SystemsBizTalk360
 
Crafting ColdFusion Applications like an Architect
Crafting ColdFusion Applications like an ArchitectCrafting ColdFusion Applications like an Architect
Crafting ColdFusion Applications like an ArchitectColdFusionConference
 
Launching a Business in Less Than 2 Months
Launching a Business in Less Than 2 MonthsLaunching a Business in Less Than 2 Months
Launching a Business in Less Than 2 MonthsAmazon Web Services
 
Internet of Things 101 - For software engineers
Internet of Things 101 - For software engineersInternet of Things 101 - For software engineers
Internet of Things 101 - For software engineersKashif Ali Siddiqui
 
CI/CD Pipelines for Your Infrastructure...as Code!
CI/CD Pipelines for Your Infrastructure...as Code!CI/CD Pipelines for Your Infrastructure...as Code!
CI/CD Pipelines for Your Infrastructure...as Code!Harvey Bendaña
 
Dell and KEMP - Partnering for scale
Dell and KEMP - Partnering for scale Dell and KEMP - Partnering for scale
Dell and KEMP - Partnering for scale Kemp
 
An Integration Platform to Support Vision 2025
An Integration Platform to Support Vision 2025An Integration Platform to Support Vision 2025
An Integration Platform to Support Vision 2025BizTalk360
 
SpringPeople Building Web Sites with ASP.NET MVC FRAMEWORK
SpringPeople Building Web Sites with ASP.NET MVC FRAMEWORKSpringPeople Building Web Sites with ASP.NET MVC FRAMEWORK
SpringPeople Building Web Sites with ASP.NET MVC FRAMEWORKSpringPeople
 

What's hot (20)

Node.JS Vs PHP: Which Is The Top Server-Side Programming Language?
Node.JS Vs PHP: Which Is The Top Server-Side Programming Language?Node.JS Vs PHP: Which Is The Top Server-Side Programming Language?
Node.JS Vs PHP: Which Is The Top Server-Side Programming Language?
 
Cultivating an eco system of success
Cultivating an eco system of success Cultivating an eco system of success
Cultivating an eco system of success
 
Cloud CMS presentation at Harvard Digital Publishing Collaborative - Dec 2015
Cloud CMS presentation at Harvard Digital Publishing Collaborative - Dec 2015Cloud CMS presentation at Harvard Digital Publishing Collaborative - Dec 2015
Cloud CMS presentation at Harvard Digital Publishing Collaborative - Dec 2015
 
Why Domain-Driven Design and Reactive Programming?
Why Domain-Driven Design and Reactive Programming?Why Domain-Driven Design and Reactive Programming?
Why Domain-Driven Design and Reactive Programming?
 
apidays LIVE London 2021 - Rethink API Troubleshooting to Deliver Value by Sa...
apidays LIVE London 2021 - Rethink API Troubleshooting to Deliver Value by Sa...apidays LIVE London 2021 - Rethink API Troubleshooting to Deliver Value by Sa...
apidays LIVE London 2021 - Rethink API Troubleshooting to Deliver Value by Sa...
 
How to Build Front-End Web Apps that Scale - FutureJS
How to Build Front-End Web Apps that Scale - FutureJSHow to Build Front-End Web Apps that Scale - FutureJS
How to Build Front-End Web Apps that Scale - FutureJS
 
Fed London - January 2015
Fed London - January 2015Fed London - January 2015
Fed London - January 2015
 
Scribe online 03 scribe online cdk and api overview
Scribe online 03   scribe online cdk and api overviewScribe online 03   scribe online cdk and api overview
Scribe online 03 scribe online cdk and api overview
 
O'Reilly ETech Conference: Laszlo RIA
O'Reilly ETech Conference: Laszlo RIAO'Reilly ETech Conference: Laszlo RIA
O'Reilly ETech Conference: Laszlo RIA
 
Integration patterns and practices for cloud and mobile computing
Integration patterns and practices for cloud and mobile computingIntegration patterns and practices for cloud and mobile computing
Integration patterns and practices for cloud and mobile computing
 
Will the Real Public API Please Stand Up? Amir Zuker
Will the Real Public API Please Stand Up? Amir ZukerWill the Real Public API Please Stand Up? Amir Zuker
Will the Real Public API Please Stand Up? Amir Zuker
 
Integrating cloud with existing IBM Systems
Integrating cloud with existing IBM SystemsIntegrating cloud with existing IBM Systems
Integrating cloud with existing IBM Systems
 
Crafting ColdFusion Applications like an Architect
Crafting ColdFusion Applications like an ArchitectCrafting ColdFusion Applications like an Architect
Crafting ColdFusion Applications like an Architect
 
Launching a Business in Less Than 2 Months
Launching a Business in Less Than 2 MonthsLaunching a Business in Less Than 2 Months
Launching a Business in Less Than 2 Months
 
Internet of Things 101 - For software engineers
Internet of Things 101 - For software engineersInternet of Things 101 - For software engineers
Internet of Things 101 - For software engineers
 
CI/CD Pipelines for Your Infrastructure...as Code!
CI/CD Pipelines for Your Infrastructure...as Code!CI/CD Pipelines for Your Infrastructure...as Code!
CI/CD Pipelines for Your Infrastructure...as Code!
 
Dell and KEMP - Partnering for scale
Dell and KEMP - Partnering for scale Dell and KEMP - Partnering for scale
Dell and KEMP - Partnering for scale
 
Case Study Telefonica
Case Study TelefonicaCase Study Telefonica
Case Study Telefonica
 
An Integration Platform to Support Vision 2025
An Integration Platform to Support Vision 2025An Integration Platform to Support Vision 2025
An Integration Platform to Support Vision 2025
 
SpringPeople Building Web Sites with ASP.NET MVC FRAMEWORK
SpringPeople Building Web Sites with ASP.NET MVC FRAMEWORKSpringPeople Building Web Sites with ASP.NET MVC FRAMEWORK
SpringPeople Building Web Sites with ASP.NET MVC FRAMEWORK
 

Similar to Flex 3 & Webservices: Building Rich Clients with SOAP and REST APIs

Keeping Current with ColdFusion - Adobe Max 2011
Keeping Current with ColdFusion - Adobe Max 2011Keeping Current with ColdFusion - Adobe Max 2011
Keeping Current with ColdFusion - Adobe Max 2011Rupesh Kumar
 
Adobe jax2010 1_dashboard
Adobe jax2010 1_dashboardAdobe jax2010 1_dashboard
Adobe jax2010 1_dashboardguest9776673
 
Microservices, Data Services and Containers for Cloud Native Architectures (D...
Microservices, Data Services and Containers for Cloud Native Architectures (D...Microservices, Data Services and Containers for Cloud Native Architectures (D...
Microservices, Data Services and Containers for Cloud Native Architectures (D...ragss
 
Foundry Management System Desktop Application
Foundry Management System Desktop Application Foundry Management System Desktop Application
Foundry Management System Desktop Application Dharmendra Sid
 
Enrique Duvos: Adobe RIA Platform
Enrique Duvos: Adobe RIA PlatformEnrique Duvos: Adobe RIA Platform
Enrique Duvos: Adobe RIA PlatformInitium
 
2005 - .NET SummerCamp: Web developmentwith IIS & ASP.NET webservices
2005 - .NET SummerCamp: Web developmentwith IIS & ASP.NET webservices2005 - .NET SummerCamp: Web developmentwith IIS & ASP.NET webservices
2005 - .NET SummerCamp: Web developmentwith IIS & ASP.NET webservicesDaniel Fisher
 
D02 - What are the best tools for Building Web 2.0 Applications.ppt
D02 - What are the best tools for Building Web 2.0 Applications.pptD02 - What are the best tools for Building Web 2.0 Applications.ppt
D02 - What are the best tools for Building Web 2.0 Applications.pptMatthew Perrins
 
DOs and DONTs on the way to 10M users
DOs and DONTs on the way to 10M usersDOs and DONTs on the way to 10M users
DOs and DONTs on the way to 10M usersYoav Avrahami
 
Coming Up to Speed with XML Authoring in Adobe FrameMaker
Coming Up to Speed with XML Authoring in Adobe FrameMakerComing Up to Speed with XML Authoring in Adobe FrameMaker
Coming Up to Speed with XML Authoring in Adobe FrameMakerdclsocialmedia
 
Html5 workshop part 1
Html5 workshop part 1Html5 workshop part 1
Html5 workshop part 1NAILBITER
 
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFlex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFrançois Le Droff
 
DOT NET TRaining
DOT NET TRainingDOT NET TRaining
DOT NET TRainingsunil kumar
 
3983 cics java real life projects
3983   cics java real life projects3983   cics java real life projects
3983 cics java real life projectsnick_garrod
 
Rcs project Training Bangalore
Rcs project Training BangaloreRcs project Training Bangalore
Rcs project Training BangaloreSunil Kumar
 

Similar to Flex 3 & Webservices: Building Rich Clients with SOAP and REST APIs (20)

Keeping Current with ColdFusion - Adobe Max 2011
Keeping Current with ColdFusion - Adobe Max 2011Keeping Current with ColdFusion - Adobe Max 2011
Keeping Current with ColdFusion - Adobe Max 2011
 
Adobe jax2010 1_dashboard
Adobe jax2010 1_dashboardAdobe jax2010 1_dashboard
Adobe jax2010 1_dashboard
 
Microservices, Data Services and Containers for Cloud Native Architectures (D...
Microservices, Data Services and Containers for Cloud Native Architectures (D...Microservices, Data Services and Containers for Cloud Native Architectures (D...
Microservices, Data Services and Containers for Cloud Native Architectures (D...
 
Foundry Management System Desktop Application
Foundry Management System Desktop Application Foundry Management System Desktop Application
Foundry Management System Desktop Application
 
Enrique Duvos: Adobe RIA Platform
Enrique Duvos: Adobe RIA PlatformEnrique Duvos: Adobe RIA Platform
Enrique Duvos: Adobe RIA Platform
 
2005 - .NET SummerCamp: Web developmentwith IIS & ASP.NET webservices
2005 - .NET SummerCamp: Web developmentwith IIS & ASP.NET webservices2005 - .NET SummerCamp: Web developmentwith IIS & ASP.NET webservices
2005 - .NET SummerCamp: Web developmentwith IIS & ASP.NET webservices
 
D02 - What are the best tools for Building Web 2.0 Applications.ppt
D02 - What are the best tools for Building Web 2.0 Applications.pptD02 - What are the best tools for Building Web 2.0 Applications.ppt
D02 - What are the best tools for Building Web 2.0 Applications.ppt
 
DOs and DONTs on the way to 10M users
DOs and DONTs on the way to 10M usersDOs and DONTs on the way to 10M users
DOs and DONTs on the way to 10M users
 
Coming Up to Speed with XML Authoring in Adobe FrameMaker
Coming Up to Speed with XML Authoring in Adobe FrameMakerComing Up to Speed with XML Authoring in Adobe FrameMaker
Coming Up to Speed with XML Authoring in Adobe FrameMaker
 
Html5 workshop part 1
Html5 workshop part 1Html5 workshop part 1
Html5 workshop part 1
 
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFlex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
 
Evolve18 | Carmen Sutter & Sarah Xu | Accelerate your Digital Experience with...
Evolve18 | Carmen Sutter & Sarah Xu | Accelerate your Digital Experience with...Evolve18 | Carmen Sutter & Sarah Xu | Accelerate your Digital Experience with...
Evolve18 | Carmen Sutter & Sarah Xu | Accelerate your Digital Experience with...
 
DOT NET TRaining
DOT NET TRainingDOT NET TRaining
DOT NET TRaining
 
3983 cics java real life projects
3983   cics java real life projects3983   cics java real life projects
3983 cics java real life projects
 
Rcs project Training Bangalore
Rcs project Training BangaloreRcs project Training Bangalore
Rcs project Training Bangalore
 
test4
test4test4
test4
 
Web
WebWeb
Web
 
test4
test4test4
test4
 
test3
test3test3
test3
 
HTML5 Comprehensive Guide
HTML5 Comprehensive GuideHTML5 Comprehensive Guide
HTML5 Comprehensive Guide
 

Recently uploaded

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsPrecisely
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 

Recently uploaded (20)

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power Systems
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 

Flex 3 & Webservices: Building Rich Clients with SOAP and REST APIs

  • 1. Flex 3 & Webservices Cristian Ivascu :: Adobe 360 Flex, Milan 08 – APR - 2008 Copyright 2008 Adobe Systems Incorporated. All rights reserved. 1
  • 2. Agenda  Introduction to Flex and web services  Building a SOAP-based app  REST services  Building a del.icio.us based app  Q&A Copyright 2008 Adobe Systems Incorporated. All rights reserved. 2
  • 3. One server, multiple, disparate clients Copyright 2008 Adobe Systems Incorporated. All rights reserved. 3
  • 4. What are webservices? W3C says: “a software system designed to support interoperable Machine to Machine interaction over a network” (W3C) In practice: web apis that are accessed remotely Practice matters! Copyright 2008 Adobe Systems Incorporated. All rights reserved. 4
  • 5. Web services – which one?  SOAP & WSDL   Verbose   Machine usable Enterprise REST  Light-weight  No encoding  popular! Copyright 2008 Adobe Systems Incorporated. All rights reserved. 5
  • 6. Flex and Webservices  Flex creates rich clients;  Web services bring data to the client  Flex works with web services in an easy manner Copyright 2008 Adobe Systems Incorporated. All rights reserved. 6
  • 7. WSDL sample - VideoSearch • Only one operation • Simple request parameters • Slightly complex response • Link: http://localhost/video.wsdl Copyright 2008 Adobe Systems Incorporated. All rights reserved. 7
  • 8. How to access the service?  At runtime  At development time (via tool support) Copyright 2008 Adobe Systems Incorporated. All rights reserved. 8
  • 9. Runtime Demo  Let’s see it in the Builder! Copyright 2008 Adobe Systems Incorporated. All rights reserved. 9
  • 10. When to use it • Dynamic scenarios • Discovery of services at run-time • Services that may change more often Characteristics • Not tied to a particular implementation • Very flexible • Adapts easily to changes, without messing with the code Copyright 2008 Adobe Systems Incorporated. All rights reserved. 10
  • 11. What about this? Copyright 2008 Adobe Systems Incorporated. All rights reserved. 11
  • 12. Dev-time way Why? • For the more static scenarios – build and forget • For increased productivity • To make it easier How? • Added classes to model the wsdl contents • Added a way to link types in wsdl to AS classes • Tool support & code generation Copyright 2008 Adobe Systems Incorporated. All rights reserved. 12
  • 13. Video Search Demo redone  The same Video Searching app re-done to take advantage of the new features.,  Let’s see how it’s made. Copyright 2008 Adobe Systems Incorporated. All rights reserved. 13
  • 14. Generated code – is this spaghetti? Copyright 2008 Adobe Systems Incorporated. All rights reserved. 14
  • 15. How to find and fix problems  Check if the schema is there  Breakpoints in call() and processResult()  Check type mappings & wsdl type Copyright 2008 Adobe Systems Incorporated. All rights reserved. 15
  • 16. Known issues with the generated code  We don’t support everything – only WS-I 1.0 profile; wsdl 1.0 & soap 1.1  Known issues – there are a few  Have one? Report it @ bugs.adobe.com/flex Copyright 2008 Adobe Systems Incorporated. All rights reserved. 16
  • 17. REST  Can use multiple output formats – XML, JSON, etc  Is very light-weight    Pro: performance Con: there is no typing info! Is very popular Copyright 2008 Adobe Systems Incorporated. All rights reserved. 17
  • 18. Flex & Rest services  They haven’t change much  AS allows manipulation of XML and binding to objects  But there’s a catch – httpservice.xmlDecode() + a custom model Copyright 2008 Adobe Systems Incorporated. All rights reserved. 18
  • 19. DEMO – del.icio.us API usage  xmlDecode to convert raw xml into an array of “Post.as” instances  There is also a more generic approach – using SimpleXMLDecoder & ObjectTranslator http://booleanbetrayal.com/2007/05/18/httpservice-xmldecode-objecttranslator-an Copyright 2008 Adobe Systems Incorporated. All rights reserved. 19
  • 20. Flex | Final words of wisdom  Web services are a way of getting data into your Flex app;  When building rich clients you need to use them  Web services in Flex can be better; for suggestions or bugs visit: bugs.adobe.com/flex Copyright 2008 Adobe Systems Incorporated. All rights reserved. 20
  • 21. Q&A Copyright 2008 Adobe Systems Incorporated. All rights reserved. 21
  • 22. This is (almost) the last slide • Flex can cope with both dynamic and strong-typed web service usage. • The wizard only generates some code for you. Tweak it! • Strong types are not for WSDL only. Use XMLDecode() . Copyright 2008 Adobe Systems Incorporated. All rights reserved. 22
  • 23. Go play! http://adobe.com/go/flex …and off to lunch! Buon appetito! Copyright 2008 Adobe Systems Incorporated. All rights reserved. 23