SlideShare una empresa de Scribd logo
1 de 49
Descargar para leer sin conexión
IBM Brasil




                    Loiane Groner – loianeg@br.ibm.com
                    Nov/2010




© 2010 IBM Corporation
About me

       5+ years of web development experience
       Java/ExtJS –Insights Leader - IT Specialist at IBM Brazil
              IBM Market
                         Team
        – International project – US client
       Java/JEE/XML/ExtJS Technical Leader at IBM
       IBM Academic Initiative Ambassador
       JUG Leader at CampinasJUG/Java Campinas
        (Brazilian JUG – Java User Group)
       JUG Coordinator at ESJUG (Brazilian JUG)


        Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
2
IBM Market Insights




    Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
3
IBM Market Insights




    Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
4
YUI Lacked:
                                              • Easy to use API
              IBM Market Insights

                                              • Real World Widgets




    Technical Session | Ext JS Overview – November 2010              © 2010 IBM Corporation
5
IBM Market Insights




    Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
6
Windows looks like OS windows – support
dragging/resizing/closing


              IBM Market Insights




    Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
7
IBM Market Insights




    Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
8
Good Documentation



                  IBM Market Insights




        Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
9
Community Support



               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
10
Commercial and Open Source License



               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
11
Cross Browser



                  IBM Market Insights




        Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
12
Adapters



               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
13
IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
14
support paging/filtration/sorting/grouping/editor/RESTful
 Data Grid                    Easy to load/save data to server in different formats – xml/json




               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010                             © 2010 IBM Corporation
15
Window
                                                                                        Prompt

     Confirm
                                                                                        Icon Alert


     Yes, No,            IBM Market Insights
      Cancel




     Progress
      Dialog




                                                                     Wait Dialog
 Window with
 components




               Technical Session | Ext JS Overview – November 2010                 © 2010 IBM Corporation
16
Tree Panel                 support drag and drop/multiple trees/reordering/checkbox
                                   Easy to load/save data to server in different formats – xml/json




               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010                              © 2010 IBM Corporation
17
support autocomplete/typing/ajax/search/adavanced template
 Combo Boxes                           Easy to load/save data to server in different formats – xml/json




               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010                                © 2010 IBM Corporation
18
support ajax/file upload, calendar, etc
 Forms                            Easy to load/save data to server in different formats – xml/json




               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010                              © 2010 IBM Corporation
19
Dynamic – supports reloading on run time
 Charts                                                        Requires Flash




               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010                                  © 2010 IBM Corporation
20
Google Calendar – same functions
 Calendar                                                    Ext JS 3.3+




               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010                            © 2010 IBM Corporation
21
Google Maps, Gears and Adobe Air Integration



               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
22
Themes                                                    Easy to customize




               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010                   © 2010 IBM Corporation
23
What Else Ext JS Can Do?

      Ajax support
      Dom traversing
           IBM Market Insights


      Dom manipulation
      Event Handling
      Selectors
      OOP emulation
      Animation

         Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
24
IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
25
Hello World using Eclipse IDE – Java project

      Donwload:
       http://sencha.com/products/extjs/
       download.php
             IBM Market Insights


      Create a Dynamic Web Project.
      Under WebContent folder, create
       a folder where all ExtJS files will
       be located (I named it ext-3.0.3).
       Paste adapter and resources
       folders under your extjs folder.
       Also, paste this file: ext-
       all.js under ext-3.0.3:
       Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
26
IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
27
Hello World



               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
28
IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
29
Ext JS and Base Library Relations



               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
30
Main Ext JS Classes

  Component
  Panel        IBM Market Insights


  Container
  Store




      Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
31
Component
      All widgets extends component class                            Components are managed by
                                                                       Ext.ComponentMgr
      Provide base widget functions like
                                                                       −   get(componentId)
       −   enable()/disable()
                                                                       −   registerType(xtype, object) (shorthand Ext.reg())
       −   show()/hide()
       −   addClass()/removeClass()
       −                  IBM Market Insights
           update(data/html) – update content area
       −   getEl() return element
       −   getId()
       −   getXType()
       −   render(target)
       −   focus()
      XType – alternate way to define component
       −   Lazy component creation
              var panel1 = {
              xtype : 'panel',
              title : 'Plain Panel',
              html : 'Panel with an xtype specified'
              }

              var myPanel = new Ext.Panel({
              renderTo : document.body,
              height : 50,
              width : 150,
              title : 'Panel',
              frame : true



               Technical Session | Ext JS Overview – November 2010                                                      © 2010 IBM Corporation
32
Containers

      handle the basic behavior of       index or id)
       containing items, namely        Main prop
       adding, inserting and removing
       items IBM Market Insights        − Items - MixedCollection of
                                                              children components
      Main functions
       − add()
       − remove()/removeAll()
       − insert()
       − find()/findBy()/findById()/findByTy
         pe
       − doLayout()
       − get(index or
         id)/getComponent(component or


        Technical Session | Ext JS Overview – November 2010                         © 2010 IBM Corporation
33
Panels
      Main panel functions/prop/conf prop  Panel subclasses
       − load()                                                  −   TabPanel
            ▪   panel.load({                                     −   Window
            ▪       url: 'your-url.php',
            ▪       params: {param1: 'foo', param2: 'bar'}, //   −   FormPanel
                orIBM Market Insights
                    a URL encoded string
            ▪       callback: yourFunction,                      −   GridPanel
            ▪       scope: yourObject, // optional scope for     −   TreePanel
                the callback
            ▪       discardUrl: false,
            ▪       nocache: false,
            ▪       text: 'Loading...',
            ▪       timeout: 30,
            ▪       scripts: false
            ▪   });
       − body – prop
       − html – conf prop
       − autoLoad – conf prop


      Toolbar and Bottombar



        Technical Session | Ext JS Overview – November 2010                      © 2010 IBM Corporation
34
Stores
      Data storage/Loading
      Store contains records object which contain a server data directly
       − Store is able to insert/update/add records
      SubClasses
               IBM Market Insights
       − ArrayStore: Store + ArrayReader – plain js array can be loaded into the array store
       − DirectStore: Store + DirectProxy + JsonReader - CRUD operation is going thought custom js
          method
       − GroupingStore: store for grid rows grouping
       − JsonStore: Store + JsonReader
       − XmlStore: Store + XmlReader




         Technical Session | Ext JS Overview – November 2010                            © 2010 IBM Corporation
35
Stores

      Main exchange format: XML and JSON
      Easy to integrate – any language/framework with XML or JSON
       support: Market Insights
             IBM




       Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
36
Layout Manager

  Layouts manages by containers – there is
   no need to create Layouts directly
                  IBM Market Insights
  The most useful are Fit, VBox, HBox,
   Border
     − Only VBox, HBox, Border layouts
       supports margins
  Flex prop of VBox, HBox
  BorderLayout must have center item
  Table layout does not support resizing of
   items
        Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
37
IBM Market Insights




  http://github.com/loiane/extjs-crud-grid-spring-hibernate


        Technical Session | Ext JS Overview – November 2010    © 2010 IBM Corporation
38
IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
39
Selenium IDE
      Firefox Extension
      List of Commands
      Selenium Locators – Xpath Expressions
                   IBM Market Insights
      Example expressions look like this:
      //input[@name='name']
      //input[@name='name' and contains(@class, 'x-form-invalid')]
      //input[@name='company']/following-sibling::img
      //div[@id='Apple']
      //div[@class='x-combo-list-item'][3]

      Examples using CSS selectors:
      css=html:root
      css=div#structuralPseudo :nth-last-child(2)
      css=a[class~="class2"]


         Technical Session | Ext JS Overview – November 2010          © 2010 IBM Corporation
40
Executing Tests with Selenium Remote Control (RC)
 Programming Language
 HTTP Proxy

                IBM Market Insights




      Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
41
Java Test



               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
42
Important!

      Selenium tests for ExtJS should rely on CSS selectors. For every button, grid,
       label, tab or any significant UI element, simply chose to use the cls attribute
       and specify a CSS class.
                   IBM Market Insights




      This is how a basic button that is used in automation testing looks like:




         Technical Session | Ext JS Overview – November 2010                © 2010 IBM Corporation
43
Use Ext JS                                                DO NOT Use Ext JS
      Complex UI                                               Simple UI
      Features Insights
            IBM Market
                                                                Single Component




         Technical Session | Ext JS Overview – November 2010                 © 2010 IBM Corporation
44
Resources

  http://www.sencha.com
  http://www.extjs.com.br – Brazilian forum
          IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
45
Books



               IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
46
IBM Market Insights




     Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
47
Contact

      English blog: http://loianegroner.com
      Portuguese-Brazil blog: http://loiane.com
                 IBM Market Insights




      Twitter: @loiane




       Technical Session | Ext JS Overview – November 2010   © 2010 IBM Corporation
48
Hebrew
                          Hindi                           Traditional Chinese




                                                                                   Gracias       Spanish



                                                      Obrigado
                            Russian
                       IBM Market Insights
     Merci
      French



                                                         Brazilian


      Danku    Dutch
                                            Ar4abic
                                                         Portuguese

                                                                                 Thank You   English


                       Grazie
                                Italian

                                                             Simplified
                                                             Chinese
                                                                                                       Danke
                                                                                                           German




                                                                      Japanese
                        Tamil




                                          Thai                                      Korean




          Technical Session | Ext JS Overview – November 2010                                                       © 2010 IBM Corporation
49

Más contenido relacionado

Similar a ExtJS Overview

The Power of Simple: Whats New in BMC Control-M 8
The Power of Simple: Whats New in BMC Control-M 8The Power of Simple: Whats New in BMC Control-M 8
The Power of Simple: Whats New in BMC Control-M 8BMC Software
 
Sametime@Baloise
Sametime@BaloiseSametime@Baloise
Sametime@BaloiseBelsoft
 
Octobus technical university def
Octobus technical university   defOctobus technical university   def
Octobus technical university defDaniela Zuppini
 
Linux on systemz
Linux on systemzLinux on systemz
Linux on systemzsystemz
 
Linux on systemz
Linux on systemzLinux on systemz
Linux on systemzsystemz
 
Linux on systemz
Linux on systemzLinux on systemz
Linux on systemzsystemz
 
CICS TS for z/VSE Update including CICS connectivity options
CICS TS for z/VSE Update including CICS connectivity optionsCICS TS for z/VSE Update including CICS connectivity options
CICS TS for z/VSE Update including CICS connectivity optionsIBM
 
AD308: XPages in a Social World
AD308: XPages in a Social WorldAD308: XPages in a Social World
AD308: XPages in a Social Worldpaidi_ed
 
Xtw01t10v0901 tools and support
Xtw01t10v0901 tools and supportXtw01t10v0901 tools and support
Xtw01t10v0901 tools and supportpgnguyen44
 
S014065 cloud-storage-orlando-v1705a
S014065 cloud-storage-orlando-v1705aS014065 cloud-storage-orlando-v1705a
S014065 cloud-storage-orlando-v1705aTony Pearson
 
How Will Ibm Db2 Web Query For System I Benefit Your Shop
How Will Ibm Db2 Web Query For System I  Benefit Your ShopHow Will Ibm Db2 Web Query For System I  Benefit Your Shop
How Will Ibm Db2 Web Query For System I Benefit Your Shopteven
 
All things open 2019 - Istio 1.3-new
All things open 2019 - Istio 1.3-newAll things open 2019 - Istio 1.3-new
All things open 2019 - Istio 1.3-newLin Sun
 
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...NRB
 
AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...
AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...
AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...Carl Tyler
 
Cognos CIO CEE 2010 Prague CZE
Cognos CIO CEE 2010 Prague CZECognos CIO CEE 2010 Prague CZE
Cognos CIO CEE 2010 Prague CZEStepan Kutaj
 
What's New for Report Authors in Cognos 10.2
What's New for Report Authors in Cognos 10.2What's New for Report Authors in Cognos 10.2
What's New for Report Authors in Cognos 10.2Senturus
 
Boosting productivity with "Plone-driven Plone development"
Boosting productivity with "Plone-driven Plone development"Boosting productivity with "Plone-driven Plone development"
Boosting productivity with "Plone-driven Plone development"Henning Rietz
 

Similar a ExtJS Overview (20)

The Power of Simple: Whats New in BMC Control-M 8
The Power of Simple: Whats New in BMC Control-M 8The Power of Simple: Whats New in BMC Control-M 8
The Power of Simple: Whats New in BMC Control-M 8
 
Sametime@Baloise
Sametime@BaloiseSametime@Baloise
Sametime@Baloise
 
Octobus technical university def
Octobus technical university   defOctobus technical university   def
Octobus technical university def
 
Linux on systemz
Linux on systemzLinux on systemz
Linux on systemz
 
Linux on systemz
Linux on systemzLinux on systemz
Linux on systemz
 
Linux on systemz
Linux on systemzLinux on systemz
Linux on systemz
 
CICS TS for z/VSE Update including CICS connectivity options
CICS TS for z/VSE Update including CICS connectivity optionsCICS TS for z/VSE Update including CICS connectivity options
CICS TS for z/VSE Update including CICS connectivity options
 
AD308: XPages in a Social World
AD308: XPages in a Social WorldAD308: XPages in a Social World
AD308: XPages in a Social World
 
Xtw01t10v0901 tools and support
Xtw01t10v0901 tools and supportXtw01t10v0901 tools and support
Xtw01t10v0901 tools and support
 
S014065 cloud-storage-orlando-v1705a
S014065 cloud-storage-orlando-v1705aS014065 cloud-storage-orlando-v1705a
S014065 cloud-storage-orlando-v1705a
 
Who is BIRT
Who is BIRTWho is BIRT
Who is BIRT
 
How Will Ibm Db2 Web Query For System I Benefit Your Shop
How Will Ibm Db2 Web Query For System I  Benefit Your ShopHow Will Ibm Db2 Web Query For System I  Benefit Your Shop
How Will Ibm Db2 Web Query For System I Benefit Your Shop
 
All things open 2019 - Istio 1.3-new
All things open 2019 - Istio 1.3-newAll things open 2019 - Istio 1.3-new
All things open 2019 - Istio 1.3-new
 
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...
 
AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...
AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...
AD109 - Using the IBM Sametime Proxy SDK: WebSphere Portal, IBM Connections -...
 
l011029
l011029l011029
l011029
 
Cognos CIO CEE 2010 Prague CZE
Cognos CIO CEE 2010 Prague CZECognos CIO CEE 2010 Prague CZE
Cognos CIO CEE 2010 Prague CZE
 
What's New for Report Authors in Cognos 10.2
What's New for Report Authors in Cognos 10.2What's New for Report Authors in Cognos 10.2
What's New for Report Authors in Cognos 10.2
 
Boosting productivity with "Plone-driven Plone development"
Boosting productivity with "Plone-driven Plone development"Boosting productivity with "Plone-driven Plone development"
Boosting productivity with "Plone-driven Plone development"
 
Reporting on requirements
Reporting on requirementsReporting on requirements
Reporting on requirements
 

Último

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
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...Miguel Araújo
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
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 FresherRemote DBA Services
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
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 DevelopmentsTrustArc
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 

Último (20)

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
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...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
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
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
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
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 

ExtJS Overview

  • 1. IBM Brasil Loiane Groner – loianeg@br.ibm.com Nov/2010 © 2010 IBM Corporation
  • 2. About me  5+ years of web development experience  Java/ExtJS –Insights Leader - IT Specialist at IBM Brazil IBM Market Team – International project – US client  Java/JEE/XML/ExtJS Technical Leader at IBM  IBM Academic Initiative Ambassador  JUG Leader at CampinasJUG/Java Campinas (Brazilian JUG – Java User Group)  JUG Coordinator at ESJUG (Brazilian JUG) Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 2
  • 3. IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 3
  • 4. IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 4
  • 5. YUI Lacked: • Easy to use API IBM Market Insights • Real World Widgets Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 5
  • 6. IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 6
  • 7. Windows looks like OS windows – support dragging/resizing/closing IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 7
  • 8. IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 8
  • 9. Good Documentation IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 9
  • 10. Community Support IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 10
  • 11. Commercial and Open Source License IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 11
  • 12. Cross Browser IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 12
  • 13. Adapters IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 13
  • 14. IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 14
  • 15. support paging/filtration/sorting/grouping/editor/RESTful Data Grid Easy to load/save data to server in different formats – xml/json IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 15
  • 16. Window Prompt Confirm Icon Alert Yes, No, IBM Market Insights Cancel Progress Dialog Wait Dialog Window with components Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 16
  • 17. Tree Panel support drag and drop/multiple trees/reordering/checkbox Easy to load/save data to server in different formats – xml/json IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 17
  • 18. support autocomplete/typing/ajax/search/adavanced template Combo Boxes Easy to load/save data to server in different formats – xml/json IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 18
  • 19. support ajax/file upload, calendar, etc Forms Easy to load/save data to server in different formats – xml/json IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 19
  • 20. Dynamic – supports reloading on run time Charts Requires Flash IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 20
  • 21. Google Calendar – same functions Calendar Ext JS 3.3+ IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 21
  • 22. Google Maps, Gears and Adobe Air Integration IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 22
  • 23. Themes Easy to customize IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 23
  • 24. What Else Ext JS Can Do?  Ajax support  Dom traversing IBM Market Insights  Dom manipulation  Event Handling  Selectors  OOP emulation  Animation Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 24
  • 25. IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 25
  • 26. Hello World using Eclipse IDE – Java project  Donwload: http://sencha.com/products/extjs/ download.php IBM Market Insights  Create a Dynamic Web Project.  Under WebContent folder, create a folder where all ExtJS files will be located (I named it ext-3.0.3). Paste adapter and resources folders under your extjs folder. Also, paste this file: ext- all.js under ext-3.0.3: Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 26
  • 27. IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 27
  • 28. Hello World IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 28
  • 29. IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 29
  • 30. Ext JS and Base Library Relations IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 30
  • 31. Main Ext JS Classes  Component  Panel IBM Market Insights  Container  Store Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 31
  • 32. Component  All widgets extends component class  Components are managed by Ext.ComponentMgr  Provide base widget functions like − get(componentId) − enable()/disable() − registerType(xtype, object) (shorthand Ext.reg()) − show()/hide() − addClass()/removeClass() − IBM Market Insights update(data/html) – update content area − getEl() return element − getId() − getXType() − render(target) − focus()  XType – alternate way to define component − Lazy component creation  var panel1 = {  xtype : 'panel',  title : 'Plain Panel',  html : 'Panel with an xtype specified'  }  var myPanel = new Ext.Panel({  renderTo : document.body,  height : 50,  width : 150,  title : 'Panel',  frame : true Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 32
  • 33. Containers  handle the basic behavior of index or id) containing items, namely  Main prop adding, inserting and removing items IBM Market Insights − Items - MixedCollection of children components  Main functions − add() − remove()/removeAll() − insert() − find()/findBy()/findById()/findByTy pe − doLayout() − get(index or id)/getComponent(component or Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 33
  • 34. Panels  Main panel functions/prop/conf prop  Panel subclasses − load() − TabPanel ▪ panel.load({ − Window ▪ url: 'your-url.php', ▪ params: {param1: 'foo', param2: 'bar'}, // − FormPanel orIBM Market Insights a URL encoded string ▪ callback: yourFunction, − GridPanel ▪ scope: yourObject, // optional scope for − TreePanel the callback ▪ discardUrl: false, ▪ nocache: false, ▪ text: 'Loading...', ▪ timeout: 30, ▪ scripts: false ▪ }); − body – prop − html – conf prop − autoLoad – conf prop  Toolbar and Bottombar Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 34
  • 35. Stores  Data storage/Loading  Store contains records object which contain a server data directly − Store is able to insert/update/add records  SubClasses IBM Market Insights − ArrayStore: Store + ArrayReader – plain js array can be loaded into the array store − DirectStore: Store + DirectProxy + JsonReader - CRUD operation is going thought custom js method − GroupingStore: store for grid rows grouping − JsonStore: Store + JsonReader − XmlStore: Store + XmlReader Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 35
  • 36. Stores  Main exchange format: XML and JSON  Easy to integrate – any language/framework with XML or JSON support: Market Insights IBM Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 36
  • 37. Layout Manager  Layouts manages by containers – there is no need to create Layouts directly IBM Market Insights  The most useful are Fit, VBox, HBox, Border − Only VBox, HBox, Border layouts supports margins  Flex prop of VBox, HBox  BorderLayout must have center item  Table layout does not support resizing of items Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 37
  • 38. IBM Market Insights  http://github.com/loiane/extjs-crud-grid-spring-hibernate Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 38
  • 39. IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 39
  • 40. Selenium IDE  Firefox Extension  List of Commands  Selenium Locators – Xpath Expressions IBM Market Insights  Example expressions look like this:  //input[@name='name']  //input[@name='name' and contains(@class, 'x-form-invalid')]  //input[@name='company']/following-sibling::img  //div[@id='Apple']  //div[@class='x-combo-list-item'][3]  Examples using CSS selectors:  css=html:root  css=div#structuralPseudo :nth-last-child(2)  css=a[class~="class2"] Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 40
  • 41. Executing Tests with Selenium Remote Control (RC)  Programming Language  HTTP Proxy IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 41
  • 42. Java Test IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 42
  • 43. Important!  Selenium tests for ExtJS should rely on CSS selectors. For every button, grid, label, tab or any significant UI element, simply chose to use the cls attribute and specify a CSS class. IBM Market Insights  This is how a basic button that is used in automation testing looks like: Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 43
  • 44. Use Ext JS DO NOT Use Ext JS  Complex UI  Simple UI  Features Insights IBM Market  Single Component Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 44
  • 45. Resources  http://www.sencha.com  http://www.extjs.com.br – Brazilian forum IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 45
  • 46. Books IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 46
  • 47. IBM Market Insights Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 47
  • 48. Contact  English blog: http://loianegroner.com  Portuguese-Brazil blog: http://loiane.com IBM Market Insights  Twitter: @loiane Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 48
  • 49. Hebrew Hindi Traditional Chinese Gracias Spanish Obrigado Russian IBM Market Insights Merci French Brazilian Danku Dutch Ar4abic Portuguese Thank You English Grazie Italian Simplified Chinese Danke German Japanese Tamil Thai Korean Technical Session | Ext JS Overview – November 2010 © 2010 IBM Corporation 49