SlideShare una empresa de Scribd logo
1 de 14
DHTMLX Isis Viewer
Yet Another Apache Isis™ Viewer
Apache Isis




Apache Isis is a Java framework for writing domain-
driven applications

Automatically renders domain objects in an OOUI

Provides rapid prototyping & development
Apache Isis Programming



      prototype             develop             deploy as a
        pojo             domain model &        auto-generated
    domain model            unit test             webapp



Isis’programming model   JUnit integration   with Isis persistence
DHTMLX Suite




DHTMLX is a cross browser JavaScript library for
Building Rich Web Applications

Provides a complete and fully integrated set of Ajax
powered UI components
DHTMLX Isis Viewer Architecture




   DHMLX
                            REST           API      pojo
Components &   Ajax
                           Services              domain model
View Manager



Web Browser           DHTMLX Isis Viewer         Model Metadata
DHTMLX Isis Viewer Architecture
                              Semantic Model



                              View
                                                                  Isis
     Rendering          API                          API
                                                               meta model
                              Layout          Form




Code Hooks (optional)                                         DSL (optional)



function foo(id) {                                         1C[
  alert(id);                                                 a[ title: "Text"
                                     Parser                      name
                                                                 ok(),cancel()
}                                                              ]
                                                           ]
                                  ANTLR4
Demo
The Demo, based on the ToDo example application
which is included in the Isis framework distribution, is
hosted on the Google App Engine and available until it
does not run out of FREE quota.

http://isis-viewer-dhtmlx.appspot.com
Demo Application Screen
DSL Goals


Don't make the DSL read like natural language


Provide clarity for the reader
DSL Code Example
DSL Highlights

3L[                                                      Pattern 3L
                                     Cell a
      a[
           widht:400             Cell a width

            "General" [           Fieldset

               description          Data
               category
           ]
           [ok(),cancel()]         Actions
      ]                                         Cell c
      c [
            @Top[ add(),del()]      Toolbar Actions
            dependencies <''>     Collection
      ]
]
Conclusion
Business functionality is encapsulated on the
core business objects

Desktop class web applications based on Ajax

Automatically generate domain objects in an Object
Oriented UI

Custom user interfaces can be specified through a
zero-learning-curve DSL

Code-hooks allows developers to reference the UI
components and write the ad-hoc customization
Coming Soon


DSL extension to support all DHTMLX components
(accordion, chart, spreadsheet.etc)

Mobile web application UI with DHTMLX Touch

Shiro Security integration

Improve the integration with the Isis Framework
Resources

Web                                     Books

Apache Isis                             Dan Haywood
http://isis.apache.org                  http://www.pragprog.com/titles/dhnako

DHTMLX                                  Martin Fowler
http://www.dhtmlx.com                   http://martinfowler.com/dsl.html

Mylaensys Blog                          Terrence Parr
http://blog.mylaensys.com               http://pragprog.com/book/tpantlr2/the-
                                        definitive-antlr-4-reference

DHTMLX Isis Viewer Demo
http://isis-viewer-dhtmlx.appspot.com

Más contenido relacionado

Similar a Dhtmlx isis viewer

吴磊 - Silverlight企业级RIA
吴磊 - Silverlight企业级RIA吴磊 - Silverlight企业级RIA
吴磊 - Silverlight企业级RIAd0nn9n
 
MyMobileWeb Certification Part III
MyMobileWeb Certification Part IIIMyMobileWeb Certification Part III
MyMobileWeb Certification Part IIIcrdlc
 
Ajax tutorial
Ajax tutorialAjax tutorial
Ajax tutorialKat Roque
 
Ajax toolkit framework
Ajax toolkit frameworkAjax toolkit framework
Ajax toolkit frameworkSunil Kumar
 
Standing on the Shoulders of Giants – The Kotti Web Application Framework
Standing on the Shoulders of Giants – The Kotti Web Application FrameworkStanding on the Shoulders of Giants – The Kotti Web Application Framework
Standing on the Shoulders of Giants – The Kotti Web Application FrameworkDon Disko
 
企業應用行動化開發架構
企業應用行動化開發架構企業應用行動化開發架構
企業應用行動化開發架構湯米吳 Tommy Wu
 
Linguistic Abstraction for the Web
Linguistic Abstraction for the WebLinguistic Abstraction for the Web
Linguistic Abstraction for the WebEelco Visser
 
An insight to microsoft platform
An insight to microsoft platformAn insight to microsoft platform
An insight to microsoft platformConfiz
 
Building Cross Platform Mobile Web Apps
Building Cross Platform Mobile Web AppsBuilding Cross Platform Mobile Web Apps
Building Cross Platform Mobile Web AppsJames Pearce
 
Leveraging Hadoop in Polyglot Architectures
Leveraging Hadoop in Polyglot ArchitecturesLeveraging Hadoop in Polyglot Architectures
Leveraging Hadoop in Polyglot ArchitecturesThanigai Vellore
 
UXComm: Universal XML Communicator, an Agent Architecture
UXComm: Universal XML Communicator, an Agent ArchitectureUXComm: Universal XML Communicator, an Agent Architecture
UXComm: Universal XML Communicator, an Agent ArchitectureGeorge Vanecek
 
Extending Appcelerator Titanium Mobile through Native Modules
Extending Appcelerator Titanium Mobile through Native ModulesExtending Appcelerator Titanium Mobile through Native Modules
Extending Appcelerator Titanium Mobile through Native Modulesomorandi
 
Spring 4.0 - Evolution or Revolution
Spring 4.0 - Evolution or RevolutionSpring 4.0 - Evolution or Revolution
Spring 4.0 - Evolution or RevolutionRaffael Schmid
 
iOS Development - Offline Class for Jasakomer
iOS Development - Offline Class for JasakomeriOS Development - Offline Class for Jasakomer
iOS Development - Offline Class for JasakomerAndri Yadi
 
Cloud State of the Union for Java Developers
Cloud State of the Union for Java DevelopersCloud State of the Union for Java Developers
Cloud State of the Union for Java DevelopersBurr Sutter
 
Essential Capabilities of an IoT Cloud Platform - April 2017 AWS Online Tech ...
Essential Capabilities of an IoT Cloud Platform - April 2017 AWS Online Tech ...Essential Capabilities of an IoT Cloud Platform - April 2017 AWS Online Tech ...
Essential Capabilities of an IoT Cloud Platform - April 2017 AWS Online Tech ...Amazon Web Services
 
AWS_Simple_Icons_PPT_v18.02.22.b2ea1dadee22ca9ba19f30384d69f48409fab707.pptx
AWS_Simple_Icons_PPT_v18.02.22.b2ea1dadee22ca9ba19f30384d69f48409fab707.pptxAWS_Simple_Icons_PPT_v18.02.22.b2ea1dadee22ca9ba19f30384d69f48409fab707.pptx
AWS_Simple_Icons_PPT_v18.02.22.b2ea1dadee22ca9ba19f30384d69f48409fab707.pptxMichaelAlfonso12
 

Similar a Dhtmlx isis viewer (20)

吴磊 - Silverlight企业级RIA
吴磊 - Silverlight企业级RIA吴磊 - Silverlight企业级RIA
吴磊 - Silverlight企业级RIA
 
MyMobileWeb Certification Part III
MyMobileWeb Certification Part IIIMyMobileWeb Certification Part III
MyMobileWeb Certification Part III
 
Ajax tutorial
Ajax tutorialAjax tutorial
Ajax tutorial
 
Ajax toolkit framework
Ajax toolkit frameworkAjax toolkit framework
Ajax toolkit framework
 
Standing on the Shoulders of Giants – The Kotti Web Application Framework
Standing on the Shoulders of Giants – The Kotti Web Application FrameworkStanding on the Shoulders of Giants – The Kotti Web Application Framework
Standing on the Shoulders of Giants – The Kotti Web Application Framework
 
企業應用行動化開發架構
企業應用行動化開發架構企業應用行動化開發架構
企業應用行動化開發架構
 
Linguistic Abstraction for the Web
Linguistic Abstraction for the WebLinguistic Abstraction for the Web
Linguistic Abstraction for the Web
 
An insight to microsoft platform
An insight to microsoft platformAn insight to microsoft platform
An insight to microsoft platform
 
Building Cross Platform Mobile Web Apps
Building Cross Platform Mobile Web AppsBuilding Cross Platform Mobile Web Apps
Building Cross Platform Mobile Web Apps
 
Leveraging Hadoop in Polyglot Architectures
Leveraging Hadoop in Polyglot ArchitecturesLeveraging Hadoop in Polyglot Architectures
Leveraging Hadoop in Polyglot Architectures
 
UXComm: Universal XML Communicator, an Agent Architecture
UXComm: Universal XML Communicator, an Agent ArchitectureUXComm: Universal XML Communicator, an Agent Architecture
UXComm: Universal XML Communicator, an Agent Architecture
 
Extending Appcelerator Titanium Mobile through Native Modules
Extending Appcelerator Titanium Mobile through Native ModulesExtending Appcelerator Titanium Mobile through Native Modules
Extending Appcelerator Titanium Mobile through Native Modules
 
Spring 4.0 - Evolution or Revolution
Spring 4.0 - Evolution or RevolutionSpring 4.0 - Evolution or Revolution
Spring 4.0 - Evolution or Revolution
 
Aspnet
AspnetAspnet
Aspnet
 
Intro lift
Intro liftIntro lift
Intro lift
 
iOS Development - Offline Class for Jasakomer
iOS Development - Offline Class for JasakomeriOS Development - Offline Class for Jasakomer
iOS Development - Offline Class for Jasakomer
 
Asp.net.
Asp.net.Asp.net.
Asp.net.
 
Cloud State of the Union for Java Developers
Cloud State of the Union for Java DevelopersCloud State of the Union for Java Developers
Cloud State of the Union for Java Developers
 
Essential Capabilities of an IoT Cloud Platform - April 2017 AWS Online Tech ...
Essential Capabilities of an IoT Cloud Platform - April 2017 AWS Online Tech ...Essential Capabilities of an IoT Cloud Platform - April 2017 AWS Online Tech ...
Essential Capabilities of an IoT Cloud Platform - April 2017 AWS Online Tech ...
 
AWS_Simple_Icons_PPT_v18.02.22.b2ea1dadee22ca9ba19f30384d69f48409fab707.pptx
AWS_Simple_Icons_PPT_v18.02.22.b2ea1dadee22ca9ba19f30384d69f48409fab707.pptxAWS_Simple_Icons_PPT_v18.02.22.b2ea1dadee22ca9ba19f30384d69f48409fab707.pptx
AWS_Simple_Icons_PPT_v18.02.22.b2ea1dadee22ca9ba19f30384d69f48409fab707.pptx
 

Último

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
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
 
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
 
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
 
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
 
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
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
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...Martijn de Jong
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
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
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Último (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
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
 
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
 
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
 
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
 
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
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
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...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
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...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Dhtmlx isis viewer

  • 1. DHTMLX Isis Viewer Yet Another Apache Isis™ Viewer
  • 2. Apache Isis Apache Isis is a Java framework for writing domain- driven applications Automatically renders domain objects in an OOUI Provides rapid prototyping & development
  • 3. Apache Isis Programming prototype develop deploy as a pojo domain model & auto-generated domain model unit test webapp Isis’programming model JUnit integration with Isis persistence
  • 4. DHTMLX Suite DHTMLX is a cross browser JavaScript library for Building Rich Web Applications Provides a complete and fully integrated set of Ajax powered UI components
  • 5. DHTMLX Isis Viewer Architecture DHMLX REST API pojo Components & Ajax Services domain model View Manager Web Browser DHTMLX Isis Viewer Model Metadata
  • 6. DHTMLX Isis Viewer Architecture Semantic Model View Isis Rendering API API meta model Layout Form Code Hooks (optional) DSL (optional) function foo(id) { 1C[ alert(id); a[ title: "Text" Parser name ok(),cancel() } ] ] ANTLR4
  • 7. Demo The Demo, based on the ToDo example application which is included in the Isis framework distribution, is hosted on the Google App Engine and available until it does not run out of FREE quota. http://isis-viewer-dhtmlx.appspot.com
  • 9. DSL Goals Don't make the DSL read like natural language Provide clarity for the reader
  • 11. DSL Highlights 3L[ Pattern 3L Cell a a[ widht:400 Cell a width "General" [ Fieldset description Data category ] [ok(),cancel()] Actions ] Cell c c [ @Top[ add(),del()] Toolbar Actions dependencies <''> Collection ] ]
  • 12. Conclusion Business functionality is encapsulated on the core business objects Desktop class web applications based on Ajax Automatically generate domain objects in an Object Oriented UI Custom user interfaces can be specified through a zero-learning-curve DSL Code-hooks allows developers to reference the UI components and write the ad-hoc customization
  • 13. Coming Soon DSL extension to support all DHTMLX components (accordion, chart, spreadsheet.etc) Mobile web application UI with DHTMLX Touch Shiro Security integration Improve the integration with the Isis Framework
  • 14. Resources Web Books Apache Isis Dan Haywood http://isis.apache.org http://www.pragprog.com/titles/dhnako DHTMLX Martin Fowler http://www.dhtmlx.com http://martinfowler.com/dsl.html Mylaensys Blog Terrence Parr http://blog.mylaensys.com http://pragprog.com/book/tpantlr2/the- definitive-antlr-4-reference DHTMLX Isis Viewer Demo http://isis-viewer-dhtmlx.appspot.com