SlideShare una empresa de Scribd logo
1 de 63
Descargar para leer sin conexión
WebObjects &
Mootools
Introduction to Direct-Action based AJAX with
WebObjects and Mootools

Jake MacMullin, BBC
Jake MacMullin
Direct
Action
WebObjects
Why?
javascript
javascript?
Douglas Crockford,
"The JavaScript Programming Language"
http://video.yahoo.com/watch/111593
What is ‘Direct Action AJAX’?
AJAX
AJAX
Asynchronous
AJAX
 Javascript
AJAX
  And
AJAXml
   X
Component-based AJAX




                The current count is X



                       Hello.wo


                                  Hello.java
Component-based AJAX




                The current count is X



                       Hello.wo


                                  Hello.java
Component-based AJAX




                The current count is X



                       Hello.wo


                                  Hello.java
                                  Hello.java
Component-based AJAX




                The current count is X



                              count
                       Hello.wo          = 0;

                                  Hello.java
                                  Hello.java
Component-based AJAX




The current count is 0
                                         The current count is X



                                                       count
                                                Hello.wo          = 0;

       HTML
                                                           Hello.java
Component-based AJAX




The current count is 0
                                         The current count is X



                                                       count
                                                Hello.wo          = 0;

       HTML
                                                           Hello.java
Component-based AJAX




The current count is 0
                                         The current count is X



                                                Hello.wo count == 0;
                                                       count       1;

       HTML
                                                           Hello.java
                                                           Hello.java
Component-based AJAX




The current count is 0                    The current count is 1
                                         The current count is X



                                                Hello.wo count == 0;
                                                       count       1;

       HTML
                                                           Hello.java
                                                           Hello.java
Component-based AJAX




The current count is 0
The current count is 1
                                         The current count is X



                                                Hello.wo count == 0;
                                                       count       1;

       HTML
                                                           Hello.java
                                                           Hello.java
Direct Action-based AJAX




The current count is 0




                                        DirectAction.java


       HTML
Direct Action-based AJAX




The current count is 0




                                        DirectAction.java


       HTML
Direct Action-based AJAX




The current count is 0




                                        DirectAction.java


       HTML
Direct Action-based AJAX




The current count is 0




                                                 DirectAction.java


       HTML




                                 count = 1;
                                  Session.java
Direct Action-based AJAX




The current count is 0




                                         DirectAction.java


       HTML




                                 count = 1;

                                            Hello.wo

                                                Hello.java
Direct Action-based AJAX




The current count is 0                The current count is 1



                                            DirectAction.java


       HTML




                                 count = 1;

                                              Hello.wo

                                                   Hello.java
Direct Action-based AJAX




The current count is 0
The current count is 1



                                         DirectAction.java


       HTML




                                 count = 1;

                                            Hello.wo

                                                Hello.java
Why use Direct Actions?
Why use Direct Actions?

•   Most of the time, you won’t
Why use Direct Actions?

•   Most of the time, you won’t
•   ‘Single Page’ applications
Why use Direct Actions?

•   Most of the time, you won’t
•   ‘Single Page’ applications
•   Separation of concerns
Why use Direct Actions?

•   Most of the time, you won’t
•   ‘Single Page’ applications
•   Separation of concerns
•   ‘Disconnected’ client (eg. Adobe Air)
MooTools is a compact, modular,
Object-Oriented JavaScript framework
   designed for the intermediate to
   advanced JavaScript developer. It
allows you to write powerful, flexible,
   and cross-browser code with its
    elegant, well documented, and
             coherent API.
MooTools is a compact, modular,
Object-Oriented JavaScript framework
   designed for the intermediate to
   advanced JavaScript developer. It
allows you to write powerful, flexible,
   and cross-browser code with its
    elegant, well documented, and
             coherent API.
Mootools
Mootools


•   Light-weight (68k minified)
Mootools


•   Light-weight (68k minified)
•   Modular (take the bits you need)
Mootools


•   Light-weight (68k minified)
•   Modular (take the bits you need)
•   Makes javascript a bit more like Java
Mootools
Mootools




Core   Class   Native
Mootools



Element   Effects   Remote




 Core     Class     Native
Mootools
Scroller   Sortable    Tips




Element    Effects    Remote




 Core       Class     Native
Notes demo
Component editor demo
Q&A
For more information:
jake.macmullin@bbc.co.uk

Mootools:
http://mootools.net

Más contenido relacionado

Más de WO Community

Más de WO Community (20)

Build and deployment
Build and deploymentBuild and deployment
Build and deployment
 
High availability
High availabilityHigh availability
High availability
 
Reenabling SOAP using ERJaxWS
Reenabling SOAP using ERJaxWSReenabling SOAP using ERJaxWS
Reenabling SOAP using ERJaxWS
 
Chaining the Beast - Testing Wonder Applications in the Real World
Chaining the Beast - Testing Wonder Applications in the Real WorldChaining the Beast - Testing Wonder Applications in the Real World
Chaining the Beast - Testing Wonder Applications in the Real World
 
D2W Stateful Controllers
D2W Stateful ControllersD2W Stateful Controllers
D2W Stateful Controllers
 
Deploying WO on Windows
Deploying WO on WindowsDeploying WO on Windows
Deploying WO on Windows
 
Unit Testing with WOUnit
Unit Testing with WOUnitUnit Testing with WOUnit
Unit Testing with WOUnit
 
Life outside WO
Life outside WOLife outside WO
Life outside WO
 
Apache Cayenne for WO Devs
Apache Cayenne for WO DevsApache Cayenne for WO Devs
Apache Cayenne for WO Devs
 
Advanced Apache Cayenne
Advanced Apache CayenneAdvanced Apache Cayenne
Advanced Apache Cayenne
 
Migrating existing Projects to Wonder
Migrating existing Projects to WonderMigrating existing Projects to Wonder
Migrating existing Projects to Wonder
 
iOS for ERREST - alternative version
iOS for ERREST - alternative versioniOS for ERREST - alternative version
iOS for ERREST - alternative version
 
iOS for ERREST
iOS for ERRESTiOS for ERREST
iOS for ERREST
 
"Framework Principal" pattern
"Framework Principal" pattern"Framework Principal" pattern
"Framework Principal" pattern
 
Filtering data with D2W
Filtering data with D2W Filtering data with D2W
Filtering data with D2W
 
WOver
WOverWOver
WOver
 
Localizing your apps for multibyte languages
Localizing your apps for multibyte languagesLocalizing your apps for multibyte languages
Localizing your apps for multibyte languages
 
WOdka
WOdkaWOdka
WOdka
 
ERGroupware
ERGroupwareERGroupware
ERGroupware
 
D2W Branding Using jQuery ThemeRoller
D2W Branding Using jQuery ThemeRollerD2W Branding Using jQuery ThemeRoller
D2W Branding Using jQuery ThemeRoller
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

WebObjects & Mootools