JDeveloper 10g and JavaServer Faces: High-Performance UIs on the Web Avrom Roy-Faderman Senior Programmer May, 2006.

Slides:



Advertisements
Similar presentations
Lecture 11 Server Side Interaction
Advertisements

JavaScript FaaDoOEngineers.com FaaDoOEngineers.com.
Java Script Session1 INTRODUCTION.
Apache Struts Technology
 Copyright Wipro Technologies JSP Ver 1.0 Page 1 Talent Transformation Java Server Pages.
JDeveloper 10g View Layer Alternatives — JSP and UIX Peter Koletzke Technical Director & Principal Instructor.
Languages for Dynamic Web Documents
Avrom Roy-Faderman Senior Instructor and Programmer May 15, 2008 The Evolving Web UI.
Web applications using JavaServer Faces (JSF) A brief introduction 1JavaServer Faces (JSF)
Internet Technologies 1 Master of Information System Management Java Server Faces Model/View/Controller Design Pattern for Web Development Slides.
JavaServer Faces. Objectives To implement dynamic web pages with JavaServer Faces (JSF) technology To learn the syntactical elements of JavaServer Faces.
28/1/2001 Seminar in Databases in the Internet Environment Introduction to J ava S erver P ages technology by Naomi Chen.
Java Server Faces Model/View/Controller Design Pattern for Web Development Slides adapted from “Core JavaServer Faces” by Geary and Horstmann and the J2EE.
Chapter 11 ASP.NET JavaScript, Third Edition. 2 Objectives Learn about client/server architecture Study server-side scripting Create ASP.NET applications.
Q: According to Intel, the Pentium conforms to the IEEE standards 754 and 854 for floating point arithmetic. If you fly in aircraft designed using a Pentium,
Apache Struts Technology A MVC Framework for Java Web Applications.
Introduction to Java web programming Dr Jim Briggs JWP intro1.
Struts 2.0 an Overview ( )
Struts. Agenda Preface Struts and its components An example The architecture required for Struts Applications.
UNIT-V The MVC architecture and Struts Framework.
Java Server Pages (JSP) Presented by: Ananth Prasad & Alex Ivanov May 10, 2001.
Overview of JSP Technology. The need of JSP With servlets, it is easy to – Read form data – Read HTTP request headers – Set HTTP status codes and response.
JavaServer Faces: The Fundamentals Compiled from Sun TechDays workshops (JSF Basics, Web-Tier Codecamp: JavaServer Faces, Java Studio Creator; IBM RAD)
Pittsburgh Java User Group– Dec Java PureFaces: A JSF Framework Extension.
Grant Ronald Principal Product Manager JDeveloper and ADF for Forms Developers: Taking it to the next level.
CNIT 133 Interactive Web Pags – JavaScript and AJAX JavaScript Environment.
JSP Java Server Pages Softsmith Infotech.
JavaServer Faces Jeff Schmitt October 5, Introduction to JSF Presents a standard framework for building presentation tiers for web applications.
CSCI 6962: Server-side Design and Programming Introduction to Java Server Faces.
Chapter 8 Script-free pages. Problem with scripting in JSP When you use scripting (declaration, scriplet, expressions) in your JSP, you actually put Java.
Web applications using JavaServer Faces (JSF) A brief introduction 1JavaServer Faces (JSF)
J2EE Structure & Definitions Catie Welsh CSE 432
JSF Introduction Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Case Study + MVC Lec Error Pages By means of the page directive, a JSP can be given the responsibility of an Error page An Error JSP will be called.
JAVA SERVER PAGES CREATING DYNAMIC WEB PAGES USING JAVA James Faeldon CS 119 Enterprise Systems Programming.
Fall CIS 764 Database Systems Design L8. Web ….
Java Web Development with NetBeans IDE -- Kai Qian Chapter 5 JavaServer Faces (JSF) Technology.
JDeveloper 10g and Oracle ADF Business Components Getting the Most Out of Your Data Avrom Roy-Faderman Senior Programmer November, 2005.
JSP Fundamentals Elements of a JSP Using Beans with JSP Integrating Servlets and JSP.
JAVA SERVER FACES ADITI RAJORIYA UNI – ar2630. POINTS TO BE DISSCUSED WHAT IS JSF? WHY JSF? ARCHITECTURE JSF VERSIONS UI COMPONENTS JSF STRUCTURE AND.
JSF Framework Java Server Faces Presented by Songkran Totiya (6/10/2014)
Java server pages. A JSP file basically contains HTML, but with embedded JSP tags with snippets of Java code inside them. A JSP file basically contains.
Copyright © 2002 ProsoftTraining. All rights reserved. JavaServer Pages.
JavaServer Faces (JSF) and Ajax Integration. Agenda 대강의 ( 정말로..) 개요 예제 아키텍트라면..
Overview of Form and Javascript fundamentals. Brief matching exercise 1. This is the software that allows a user to access and view HTML documents 2.
Chính phủ điện tử TS. Phạm Văn Tính Khoa CNTT, ĐH Nông Lâm TP.HCM
RIA and Web2.0 Development with no Coding Juan Camilo Ruiz Senior Product Manager Development Tools.
CS562 Advanced Java and Internet Application Introduction to the Computer Warehouse Web Application. Java Server Pages (JSP) Technology. By Team Alpha.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Basic JSP Celsina Bignoli Problems with Servlets Servlets contain –request processing, –business logic –response generation all lumped.
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
1 Copyright © 2004, Oracle. All rights reserved. Oracle Application Development Framework.
 Web pages originally static  Page is delivered exactly as stored on server  Same information displayed for all users, from all contexts  Dynamic.
1 Java Server Pages A Java Server Page is a file consisting of HTML or XML markup into which special tags and code blocks are inserted When the page is.
Java Programming: Advanced Topics 1 Building Web Applications Chapter 13.
10 Copyright © 2004, Oracle. All rights reserved. Building ADF View Components.
APACHE STRUTS ASHISH SINGH TOMAR ast2124. OUTLINE Introduction The Model-View-Controller Design Pattern Struts’ implementation of the MVC Pattern Additional.
2 Copyright © 2004, Oracle. All rights reserved. ADF Development Process.
SDJ INFOSOFT PVT. LTD. 2 BROWSERBROWSER JSP JavaBean DB Req Res Application Layer Enterprise server/Data Sources.
Apache Struts Technology A MVC Framework for Java Web Applications.
CS320 Web and Internet Programming Web Application and MVC Chengyu Sun California State University, Los Angeles.
ORACLE ADF ONLINE TRAINING COURSE
JSP (Java Server Page) JSP is server side technology which is used to create dynamic web pages just like Servlet technology. This is mainly used for implementing.
Scripted Page Web App Development (Java Server Pages)
Unit 6-Chapter 2 Struts.
Design and Maintenance of Web Applications in J2EE
MSIS 655 Advanced Business Applications Programming
Java Server Pages (JSP)
JavaServer Faces: The Fundamentals
Presentation transcript:

JDeveloper 10g and JavaServer Faces: High-Performance UIs on the Web Avrom Roy-Faderman Senior Programmer May, 2006

Agenda A Brief History of Java Web Apps JavaServer Faces ADF Faces Q&A

A Brief History of Java Web Apps Productivity and Maintainability Capabilities and Performance

Servlets Java classes executed on the server in response to HTTP requests Originally used to output HTML This use required extensive and awkward Java coding

JSP Model 1 Files closely resembling HTML except for: Some specialized tags “Scriptlets” – embedded bits of Java code Compiled into Servlets HTML portions outputted directly into generated HTML Specialized tags run bits of Java Scriptlets run directly

Problems with JSP Model 1 Hard to Change Page Flow Mix of Java (sometimes extensive Java) and Tags on Same Page

Model 2 Architectures Separate out “View” and “Controller” View renders UI Controller handles page flow and responds to user requests No hardcoded links in view Generally no procedural code in view

A Brief History of Java Web Apps Productivity and Maintainability Capabilities and Performance

“Thick Client” vs. Web: The Past Requires customized client Large downloads High-interactivity High-performance Runs in unmodified web browser Small downloads Low-interactivity Low-performance Server

“Web 2.0” Still run in unmodified browser Relatively small download size Much more interactive than traditional web apps Much higher-performance than traditional web apps

Agenda A Brief History of Java Web Apps JavaServer Faces ADF Faces Q&A

JavaServer Faces The J2EE standard Model 2 Web Applicaton Architecture Special tag libraries for JSPs/JSPX documents Html Core Separate controller

JavaServer Faces JSF JSP and Components Page Flow Managed Beans

Simple JSF JSP Code <h:selectOneMenu id="color" required="true"> <f:selectItem itemLabel="Red" itemValue="red" /> <f:selectItem itemLabel="Green" itemValue="green" />

JSF JSP/JSPX and the Component Palette

JavaServer Faces JSF JSP and Components Page Flow Managed Beans

The JSF Controller: Page Flow All page flow information mainained in faces-config.xml JDeveloper has graphical representations of page flow

JSF Page Flow and the Component Palette

JSF Navigation Cases Navigation cases referenced in JSF JSP/JSPX pages Converted into destination by controller Go home!

JavaServer Faces JSF JSP and Components Page Flow Managed Beans

The JSF Controller can be configured to automatically create and manage Java objects Controller or view can access “managed properties” on these objects Scoping: Application Session Request

Accessing Managed Properties: JSP “JSP Expression Language” Syntax: #{beanName.propertyName} Can even have nested properties: #{beanName.property1.property2} Use these expressions as attributes for tags <h:outputText value="#{homeBean.mainLabel} />

Managed Bean Classes Each managed bean has a class that you can edit Constructor runs at the beginning of the application/request/session Methods that allow you to access managed properties Put complex logic in here instead of putting it in the view

Managed Bean Example <h:outputText value="#{homeBean.mainLabel} /> public class NavigationBean { public NavigationBean() { if /* some condition */ { setMainLabel("Red"); } else { setMainLabel("Green"); } } /* … */ }

Conditional Page Flow Instead of referring to a JSF navigation case, refer to a function that *returns* one. Go on! public String nextAction() { if /* some condition */ { return("goStatus"); } else { return("goOrder"); } }

Agenda A Brief History of Java Web Apps JavaServer Faces ADF Faces Q&A

ADF Faces Oracle ADF The ADF Binding Filter Partial Page Refresh

ADF and MVC Business Services View (Web and Wireless Clients) View and Controller (Desktop Clients) Model Controller (Web and Wireless Clients) Oracle ADF is a framework based on MVC architecture

ADF and MVC ADF Business Components ADF Faces Components ADF Swing ADF Data Bindings ADF Binding Filter Oracle ADF is a framework based on MVC architecture

ADF Faces Oracle ADF The ADF Binding Filter Partial Page Refresh

ADF Binding Filter Runs with each HTTP request Sets up a Struts managed bean, “bindings”, containing all ADF data bindings <af:inputText value="#{bindings.EmpName.inputValue} /> Database ADF Data Bindings Business Service

The Data Control Palette

ADF Faces Oracle ADF The ADF Binding Filter Partial Page Refresh

Traditional “Web 1.0 Cycle” Server renders page Page downloade d to user User fills out form User clicks button or link Request submitted to server

Component Trees You can think of a JSP/JSPX document as being a tree of components <af:selectOneMenu id="color" required="true"> <af:selectItem itemLabel="Red" itemValue="red" /> <af:selectItem itemLabel="Green" itemValue="green" />

Partial Page Refresh Use Javascript to submit a form at times other than when a user presses a button or link On server, re-render only a portion of component tree Download only the appropriate fragment of HTML

Partial Page Refresh—How It Works Server

Web Cycle with PPR Server renders components Components downloaded to user User manipulates component Request submitted to server

ADF Faces and PPR Many components always use PPR Table sorting Table pagination Expandable tables and menus … Almost all components can use PPR Requires some manual work

Simple PPR Example...

A Few Words about AJAX A synchronous J avascript A nd X ML PPR is an important part of “Web 2.0” But PPR, by itself, isn’t truly asynchronous ADF Faces (and regular JSF) “supports” full AJAX, but really only in that it supports Javascript

Q & A