Slideshow transcript
Slide 1: Ajax Frameworks in the J(2)EE Environment Lukas Gwardak
Slide 2: Agenda - Introduction into Ajax - The J2EE environment - What is a framework? - Comparison criteria - Sample comparison - Conclusion
Slide 3: Introduction into Ajax - The web is page-based - Interaction is achieved with forms (welcome back, IBM 3270!) - No rich Interaction with plain HTML - Users are waiting for page reloads (Photo: http://www.gilbertostrapazon.hpg.ig.com.br)
Slide 4: Client User activity User activity User activity time Server Server Server processing processing Jesse James Garrett, Adaptive Path, 2005
Slide 5: Introduction into Ajax Solution: XMLHttpRequest object - Introduced by Microsoft in IE5 - GET- and POST-Requests can be done asynchronously with JavaScript - Requests & responses can be done in XML or JSON - DOM & CSS manipulation - Asynchronous JavaScript And XML
Slide 6: Client Browser UI User activity Ajax engine Client-side processing time Server Server Server processing processing Jesse James Garrett, Adaptive Path, 2005
Slide 7: J2EE Environment - Highly scalable architecture - Standards-compliant - Many vendors - Web applications with Servlets API - Many existing frameworks: – Apache Struts – Spring – JavaServer Faces
Slide 8: J2EE Environment - Focus on JavaServer Faces - Presentation framework for JSP - “State of the art“ development – Separating logic, data and presentation – Model-View-Controller pattern – Component-based – Event-driven – Extensible
Slide 9: JSF in the J2EE Architecture JSF App JSF App JSF Tags JSP JSF API Servlets Sun Developer Network, 2004
Slide 10: What is a framework? - Well known: – Class libraries – Reusable components – Design patterns - Sometimes overseen: – Developer community! – Best practices!
Slide 11: Comparison Criteria - Browser compatibility - IDE support - Internationalization / Localization - Fallback mechanisms (accessibility) - XML/JSON support - Web services support - Traffic footprint - Reusable components? - Integration with other frameworks? - Licence model
Slide 12: Candidate frameworks - ICEfaces - Backbase Ajax for JSF - JBoss RichFaces - AjaxTags - AjaxAnywhere - QuipuKit - Netadvantage for JSF
Slide 13: Icefaces Backbase
Slide 14: ICEfaces architecture
Slide 15: Backbase architecture
Slide 16: ICEfaces: Platforms - Apache Tomcat - BEA Weblogic Server - JBoss Application Server - IBM Websphere Application Server - Oracle Application Server Container for J2EE (OC4J) - SAP NetWeaver - Sun GlassFish - Sun Java System Application Server - Webtide Jetty
Slide 17: Backbase: Platforms - BEA WebLogic 8.1, 9.1, 9.2 and 10 - IBM WebSphere 5.1.1, 6.0.2 and higher - Oracle 10g 10.1.3 - Tomcat 5.0, 5.5 and 6.0 - JBoss 4.0.3 SP-1, 4.0.4 and 4.0.5
Slide 18: ICEfaces: Headstart - Integrating an Ajax-Autocomplete <ice:selectInputText rows="10“ width="300“ valueChangeListener="#{autoCompleteBean.updateList}“> <f:selectItems value="#{autoCompleteBean.list}"/> </ice:selectInputText>
Slide 19: ICEfaces: IDE support - Eclipse (Web Tools Platform + JSF tools) - Sun NetBeans - MyEclipse Enterprise Workbench - BEA Workshop Studio 3, Workshop Studio for JSF - Oracle JDeveloper 10g Studio Edition
Slide 20: Backbase: IDE support - Backbase JSF Edition Eclipse plug-in – Code completion – Syntax highlighting - Real-time debugger within the web browser – Integrated with the Ajax engine
Slide 21: Backbase: IDE support Coming soon!
Slide 22: Score table ICEfaces Backbase Supported browsers IE, FF, O, S IE, FF, O, S Supported servers multiple multiple Community +++ + IDE support multiple growing Ajax Components 50+ 250+ License MPL (OSS) Proprietary Documentation +++ +++ Accessibility - +++
Slide 23: Conclusion - Many frameworks to choose from - JSF market rapidly growing - Good overall score for all frameworks, according to established criteria - Open source frameworks dominant - Community activity varies - Quality & quantity of widgets varies
Slide 24: Thank you!




Add a comment on Slide 1
If you have a SlideShare account, login to comment; else you can comment as a guest- Favorites & Groups
Showing 1-50 of 3 (more)