 2002 Prentice Hall. All rights reserved. Chapter 17: Enterprise Java Case Study: Architectural Overview Outline 17.1 Introduction 17.2 Deitel Bookstore.

Slides:



Advertisements
Similar presentations
1 Copyright © 2005, Oracle. All rights reserved. Introduction.
Advertisements

3 Copyright © 2005, Oracle. All rights reserved. Designing J2EE Applications.
Enterprise Java and Data Services Designing for Broadly Available Grid Data Access Services.
Apache Struts Technology
 2002 Prentice Hall. All rights reserved. Chapter 9: Servlets Outline 9.1 Introduction 9.2 Servlet Overview and Architecture Interface Servlet and.
SWE 316: Software Design and Architecture
 2004 Prentice Hall, Inc. All rights reserved. Chapter 21 – Web Servers (IIS and Apache) Outline 21.1 Introduction 21.2 HTTP Request Types 21.3 System.
 2003 Prentice Hall, Inc. All rights reserved. Chapter 21 – Web Servers (IIS and Apache) Outline 21.1 Introduction 21.2 HTTP Request Types 21.3 System.
Web applications using JavaServer Faces (JSF) A brief introduction 1JavaServer Faces (JSF)
Model-View-Controller ("MVC") This is a architectural design pattern for interactive applications. This design pattern organizes an interactive application.
B118 Web Programming Session #3 Introduction to XHTML February 16, 2004.
 2002 Prentice Hall. All rights reserved. 1 Chapter 6 – Introduction to the Common Gateway Interface (CGI) Outline 6.1 Introduction 6.2 Client and Web.
J2EE Java2 Enterprise Edition by Damian Borth. Contents Introduction Architectures styles Components Scenarios Roles Processing a HTTP request.
Component Based Systems Analysis Introduction. Why Components? t Development alternatives: –In-house software –Standard packages –Components 60% of the.
1 CS 483 Enterprise and Web Application Programming Week 6 Session Beans JSP Tutorial.
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
Web Development & Design Foundations with XHTML Chapter 9 Key Concepts.
Java Pet Store Application. Outline Introduction Introduction Information Layer Information Layer Application Layer Application Layer Infrastructure Layer.
 2004 Prentice Hall, Inc. All rights reserved. Chapter 37 - JavaServer Pages (JSP): Bonus for Java Developers Outline 37.1 Introduction 37.2 JavaServer.
1 Web Servers (IIS and Apache) Outline 9.1 Introduction 9.2 HTTP Request Types 9.3 System Architecture 9.4 Client-Side Scripting versus Server-Side Scripting.
Model-View-Controller Architecture in a Systems Analysis and Design Course Dr. Robert F. Zant Illinois State University.
Chapter 10 EJB Concepts of EJB Three Components in Creating an EJB Starting/Stopping J2EE Server and Deployment Tool Installation and Configuration of.
T U T O R I A L  2009 Pearson Education, Inc. All rights reserved Bookstore Web Application Introducing Visual Web Developer 2008 Express and the.
© Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Outline 29.1 Multi-Tier Architecture 29.2 Web Servers.
1 Outline 3.1 Introduction 3.2 Editing HTML 3.3 First HTML Example 3.4 W3C HTML Validation Service 3.5 Headers 3.6 Linking 3.7 Images 3.8 Special Characters.
Advanced Topics INE2720 Web Application Software Development Essential Materials.
SDPL 2002Notes 7: Apache Cocoon1 7 XML Web Site Architecture Example: Apache Cocoon, a Web publishing architecture based on XML technology
 2002 Prentice Hall. All rights reserved. Chapter 18 Enterprise Java Case Study: Presentation and Controller Logic Outline 18.1 Introduction 18.2 XMLServlet.
XSL XML Stylesheet Langauage. XPath Notation for addressing elements in an XML document /xyz - selects the root element /xyz/abc - selects all elements.
 2002 Prentice Hall. All rights reserved. Chapter 21 Application Servers Outline 21.1 Introduction 21.2 J2EE Specification and Benefits 21.3 Commercial.
Advanced Web Forms with Databases Programming Right from the Start with Visual Basic.NET 1/e 13.
Chemical Toxicity and Safety Information System Shuanghui Luo Ying Li Jin Xu.
© Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Tutorial 30 – Bookstore Application: Client Tier Introducing.
 2002 Prentice Hall, Inc. All rights reserved.2 Chapter 2 — Introduction to HyperText Markup Language 4: Part I Outline 2.1Introduction 2.2Markup Languages.
Java Petstore : A Case Study Rohit Nambiar July 2005.
Mid Morning Discussion Introduction to the IBIS-Q Front-End System ("Module" Emphasis) What is the front end Where does the front end fit in What is a.
 2001 Prentice Hall, Inc. All rights reserved. 1 Chapter 21 - Web Servers (IIS, PWS and Apache) Outline 21.1 Introduction 21.2 HTTP Request Types 21.3.
Web applications using JavaServer Faces (JSF) A brief introduction 1JavaServer Faces (JSF)
® IBM Software Group © 2007 IBM Corporation J2EE Web Component Introduction
 2004 Prentice Hall, Inc. All rights reserved. 1 Chapter 34 - Case Study: Active Server Pages and XML Outline 34.1 Introduction 34.2 Setup and Message.
Lecturer: Prof. Piero Fraternali, Teaching Assistant: Alessandro Bozzon, Advanced Web Technologies: Struts–
CITA 330 Section 6 XSLT. Transforming XML Documents to XHTML Documents XSLT is an XML dialect which is declared under namespace "
 2001 Prentice Hall, Inc. All rights reserved. Chapter 15 – Case Study: Message Forum with Active Server Pages Outline 15.1Introduction 15.2Setup and.
Web Design and Development for E-Business By Jensen J. Zhao Copyright 2003 Prentice Hall, Inc. Web Design and Development for E-Business Jensen J. Zhao.
 2004 Prentice Hall, Inc. All rights reserved. 1 Segment – 6 Web Server & database.
Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared.
© Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Outline 32.1 Reviewing the Bookstore Application 32.2.
FYP: LYU0001 Wireless-based Mobile E-Commerce on the Web Supervisor: Prof. Michael R. Lyu By: Tony, Wat Hong Fai Harris, Yan Wai Keung.
SDPL 2001Notes 7.2: Apache Cocoon1 7.2 Apache Cocoon An example of a Web publishing architecture based on XML technology An.
 2002 Prentice Hall, Inc. All rights reserved. 1 Chapter 12 – XSL: Extensible Stylesheet Language Transformations (XSLT) Outline 12.1Introduction 12.2Setup.
1 Introduction to XHTML: Part 1 Outline Introduction Elements and Attributes Editing XHTML Common Elements W3C XHTML Validation Service Headers Linking.
1 Overview of XSL. 2 Outline We will use Roger Costello’s tutorial The purpose of this presentation is  To give a quick overview of XSL  To describe.
Copyright © 2002 ProsoftTraining. All rights reserved. JavaServer Pages.
© Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Outline 31.1 Reviewing the Bookstore Application 31.2.
 2001 Prentice Hall, Inc. All rights reserved. 1 Chapter 26 - Case Study: Active Server Pages and XML Outline 26.1 Introduction 26.2 Setup and Message.
Web application architecture1 Based on Jim Conallen: Web Applications with UML.
1 Web Servers (Chapter 21 – Pages( ) Outline 21.1 Introduction 21.2 HTTP Request Types 21.3 System Architecture.
Chapter 29 World Wide Web & Browsing World Wide Web (WWW) is a distributed hypermedia (hypertext & graphics) on-line repository of information that users.
IS-907 Java EE World Wide Web - Overview. World Wide Web - History Tim Berners-Lee, CERN, 1990 Enable researchers to share information: Remote Access.
1 Copyright © 2004, Oracle. All rights reserved. Oracle Application Development Framework.
Database application development 1. Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall OBJECTIVES  Define terms  Explain three components.
1 LM 6 Database Applications Dr. Lei Li. Learning Objectives Explain three components of a client-server system Describe differences between a 2-tiered.
CS320 Web and Internet Programming Web Application and MVC Chengyu Sun California State University, Los Angeles.
A Presentation Presentation On JSP On JSP & Online Shopping Cart Online Shopping Cart.
Java Web Development with NetBeans IDE -- Kai Qian Chapter 9 Case Study.
Chapter 24 – Introduction to XHTML Basic: Part I
Structure of a web application
Java Servlets By: Tejashri Udavant..
Unit 6-Chapter 2 Struts.
Enterprise Java Beans.
Presentation transcript:

 2002 Prentice Hall. All rights reserved. Chapter 17: Enterprise Java Case Study: Architectural Overview Outline 17.1 Introduction 17.2 Deitel Bookstore 17.3 System Architecture 17.4 Enterprise JavaBeans Entity EJBs Stateful Session EJBs 17.5 Servlet Controller Logic 17.6 XSLT Presentation Logic

 2002 Prentice Hall. All rights reserved Introduction Online bookstore e-business application –Servlets –EJBs –XML –XSLT –MVC architecture

 2002 Prentice Hall. All rights reserved Deitel Bookstore Case study –Implement functionality for commercial on-line store Provide product catalog Provide shopping cart Provide customer registration Allow customers to view previous orders Provide functionality for several clients –Standard Web browsers –WML browsers –cHTML browsers

 2002 Prentice Hall. All rights reserved System Architecture Multi-tier application –Information tier Maintains data for application (RDBMS) –Middle tier Implements business logic and controller logic –Control interactions between information and client tiers –Client tier Application’s user interface (e.g., Web browser)

 2002 Prentice Hall. All rights reserved System Architecture (cont.) Fig. 17.1Three-tier application model in Deitel Bookstore.

 2002 Prentice Hall. All rights reserved System Architecture (cont.) Fig. 17.2Detailed architecture of Deitel Bookstore Enterprise Java case study.

 2002 Prentice Hall. All rights reserved Enterprise JavaBeans EJBs –Implement business logic and database abstraction layer –Stateful session EJB Represents a customer’s shopping cart –Entity EJB Provide object-based interface to information tier Servlets –Use EJB business logic to create an on-line store

 2002 Prentice Hall. All rights reserved Entity EJBs Entity EJB –Provide object-based interface to information tier –Represents object stored in application’s relational database Class Customer stores –First name –Last name –Billing address –Shipping address –Credit-card information Class Product

 2002 Prentice Hall. All rights reserved Entity EJBs (cont.) Entity EJB –Each entity EJB has corresponding model class Has properties for each entity EJB property e.g., Product EJB has corresponding ProductModel –ProductModel has properties for Product ISBN Product price Product author

 2002 Prentice Hall. All rights reserved Stateful Session EJBs ShoppingCart –Stateful session EJB –Manages customer’s shopping cart –Primary business-logic component in Deitel Bookstore

 2002 Prentice Hall. All rights reserved Servlet Controller Logic Servlets –Middle-tier interface between client and business logic –Implement the controller in MVC architecture –Interact with EJB business-logic components Handle client requests (via HTTP and WAP) Process data as XML documents Pass XML documents through XSL transformations –Produce presentation for each client

 2002 Prentice Hall. All rights reserved XSLT Presentation Logic Generate appropriate presentation for each client –Each servlet employs XSL Transformer and XSLTs One XLST for producing XHTML One XLST for producing WML One XLST for producing cHTML

 2002 Prentice Hall. All rights reserved. Outline Fig XML file generated by Get- ProductServlet. Lines Prentice Hall 6 Deitel, Deitel, Nieto, Lin & Sadhu 7 XML How to Program 8 $ images/xmlhtp1.jpg 11 CD XML document marks up a product, including the product’s ISBN, title, author, publisher and price

 2002 Prentice Hall. All rights reserved. Outline Fig XSL transformation for generating XHTML from GetProduct- Servlet (part 1). Lines <xsl:stylesheet version = "1.0" 8 xmlns:xsl = " <xsl:output method = "xml" omit-xml-declaration = "no" 11 indent = "yes" doctype-system = "DTD/xhtml1-strict.dtd" 12 doctype-public = "-//W3C//DTD XHTML 1.0 Strict//EN"/> <html xmlns = " 20 xml:lang = "en" lang = "en"> Description <xsl:for-each select = 34 "document( '/XSLT/XHTML/navigation.xml' )"> 35 Extract relevant pieces of information from the XML document to create appropriate XHTML representation

 2002 Prentice Hall. All rights reserved. Outline Fig XSL transformation for generating XHTML from GetProduct- Servlet (part 2) by <img class = "bookCover" 52 src = "images/{image}" 53 alt = "{title} cover image."/> Price: ISBN: Pages: 67 68

 2002 Prentice Hall. All rights reserved. Outline Fig XSL transformation for generating XHTML from GetProduct- Servlet (part 3) Publisher: <input type = "submit" 78 value = "Add to cart"/> <input type = "hidden" name = "ISBN" 81 value = "{ISBN}"/>

 2002 Prentice Hall. All rights reserved. Outline Fig XHTML document generated by XSLT in Get- ProductServlet (part 1). 1 2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 3 "DTD/xhtml1-strict.dtd"> 4 <html xmlns=" 5 lang="en" xml:lang="en"> 6 7 XML How to Program -- Description <img src="images/logotiny.gif" 17 alt="Deitel & Associates, Inc. logo." /> <div style= 22 "position: relative; bottom: -50px;"> <input type="text" size="15" 25 name="searchString" />

 2002 Prentice Hall. All rights reserved. Outline Fig XHTML document generated by XSLT in Get- ProductServlet (part 2) Product Catalog Create Account Log in Shopping Cart Order History XML How to Program by Deitel, Deitel, Nieto, Lin & Sadhu

 2002 Prentice Hall. All rights reserved. Outline Fig XHTML document generated by XSLT in Get- ProductServlet (part 3). 69 <img alt="XML How to Program cover image." 70 src="images/xmlhtp1.jpg" 71 class="bookCover" /> Price: $ ISBN: Pages: Publisher: Prentice Hall <input value="Add to cart" 85 type="submit" /> 86 <input value=" " 87 name="ISBN" type="hidden" />

 2002 Prentice Hall. All rights reserved. Outline Fig XHTML document generated by XSLT in Get- ProductServlet (part 4).

 2002 Prentice Hall. All rights reserved. Outline Fig XSL transformation for generating WML from GetProduct- Servlet (part 1). Lines <xsl:stylesheet version = "1.0" 4 xmlns:xsl = " 5 6 <xsl:output method = "xml" omit-xml-declaration = "no" 7 doctype-system = " 8 doctype-public = "-//WAPFORUM//DTD WML 1.1//EN"/> Description: by ISBN: Extract relevant pieces of information from the XML document to create appropriate WML representation

 2002 Prentice Hall. All rights reserved. Outline Fig XSL transformation for generating WML from GetProduct- Servlet (part 2). 36 Price: 37 $ Publisher: Pages:

 2002 Prentice Hall. All rights reserved. Outline Fig WML document generated by XSLT in Get- ProductServlet (part 1). Lines <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" 3 " Description: 14 XML How to Program 15 by Deitel, Deitel, Nieto, Lin & Sadhu ISBN: Price: $$ Publisher: Prentice Hall 24 Pages: WML document contains little formatting information, because display capabilities are limited

 2002 Prentice Hall. All rights reserved. Outline Fig WML document generated by XSLT in Get- ProductServlet (part 2).

 2002 Prentice Hall. All rights reserved. Outline Fig XSL transformation for generating cHTML from GetProduct- Servlet (part 1). Lines <xsl:stylesheet version = "1.0" 4 xmlns:xsl = " 5 6 <xsl:output method = "html" 7 omit-xml-declaration = "yes" 8 indent = "yes" 9 doctype-system = 10 " 11 doctype-public = "-//W3C//DTD HTML 2.0//EN"/> Description by Extract relevant pieces of information from the XML document to create appropriate cHTML representation

 2002 Prentice Hall. All rights reserved. Outline Fig XSL transformation for generating cHTML from GetProduct- Servlet (part 2) <img class = "bookCover" 39 src = "images/{image}"/> Price: ISBN: Pages: Publisher: <input type = "submit" 64 value = "Add to cart"/> 65 66

 2002 Prentice Hall. All rights reserved. Outline Fig XSL transformation for generating cHTML from GetProduct- Servlet (part 3). 67 <input type = "hidden" name = "ISBN" 68 value = "{ISBN}"/>

 2002 Prentice Hall. All rights reserved. Outline Fig cHTML document generated by XSLT in Get- ProductServlet (part 1). 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 2.0//EN" 2 " <META http-equiv="Content-Type" 6 content="text/html; charset=UTF-8"> 7 XML How to Program -- Description XML How to Program by Deitel, Deitel, Nieto, Lin & Sadhu Price: $ ISBN: Pages: Publisher: Prentice Hall <input value=" " name="ISBN" 34 type="hidden"> 35

 2002 Prentice Hall. All rights reserved. Outline Fig cHTML document generated by XSLT in Get- ProductServlet (part 2)