Chapter 4: Core Web Technologies

Slides:



Advertisements
Similar presentations
Overview Environment for Internet database connectivity
Advertisements

Lecture plan Information retrieval (from week 11)
Chapter 17: WEB COMPONENTS
An architecture for webb applications, J2EE
Introduction to Java 2 Enterprise Edition About myself –Neutrinos, Cancer Research, IT Applications Today’s topic: J2EE –Context –Advantages –Components.
 Java  Python  Bigtable(Bt) is a distributed storage system for managing structured data that is designed to scale to a very large size.  Query Language.
Sapana Mehta (CS-6V81) Overview Of J2EE & JBoss Sapana Mehta.
The Application Layer Chapter 7. Electronic Mail Architecture and Services The User Agent Message Formats Message Transfer Final Delivery.
The Internet Useful Definitions and Concepts About the Internet.
INTERNET DATABASE Chapter 9. u Basics of Internet, Web, HTTP, HTML, URLs. u Advantages and disadvantages of Web as a database platform. u Approaches for.
Internet…issues Managing the Internet
Technologies For use on different layers. Technologies Client tier Client tier to middle tier protocols Middle tier technologies Middle tier to data tier.
Outline IS400: Development of Business Applications on the Internet Fall 2004 Instructor: Dr. Boris Jukic Server Side Web Technologies: Part 2.
INTERNET DATABASE. Internet and E-commerce Internet – a worldwide collection of interconnected computer network Internet – a worldwide collection of interconnected.
Introduction to Web Interface Technology (CSE2030)
1 The World Wide Web Architectural Overview Static Web Documents Dynamic Web Documents HTTP – The HyperText Transfer Protocol Performance Enhancements.
Introduction to Servlet & JSP
WWW and Internet The Internet Creation of the Web Languages for document description Active web pages.
Chapter 4: Core Web Technologies. Contents - Chapter 1 o Exchanging information over the Internet ÞHTTP, HTML ÞURI, URI ÞWeb server, web browser o Web.
© 2004 IBM Corporation BEA WebLogic Server Introduction and Training.
Session-01. What is a Servlet? Servlet can be described in many ways, depending on the context: 1.Servlet is a technology i.e. used to create web application.
 Proxy Servers are software that act as intermediaries between client and servers on the Internet.  They help users on private networks get information.
The Internet Database Environment Chapter 3 1. Outline Characteristics of Web-Based Database Applications Database-enabled intranet/internet environment.
INTRODUCTION TO WEB DATABASE PROGRAMMING
FORESEC Academy FORESEC Academy Security Essentials (II)
Plattner Melanie Leschinger Bernhard
EJB Overview Celsina Bignoli Distributed Business Applications Server DB Client DB Server DB.
Distributed Multitiered Applications The J2EE platform uses a multitiered distributed application model. Application logic is divided into components 1.
Principles of Computer Security: CompTIA Security + ® and Beyond, Third Edition © 2012 Principles of Computer Security: CompTIA Security+ ® and Beyond,
HTTP client wide area network (Internet) HTTP proxy HTTP server HTTP gateway firewall HTTP tunnel Copyright Springer Verlag Berlin Heidelberg 2004.
Glink: GCOS e-business in an application server architecture Summit 2000, Jim Gallagher.
Ing. Ignacio Roqueta ARTech GeneXus and J2EE.
27.1 Chapter 27 WWW and HTTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
CP476 Internet Computing Lecture 5 : HTTP, WWW and URL 1 Lecture 5. WWW, HTTP and URL Objective: to review the concepts of WWW to understand how HTTP works.
Client presentation layer resource management layer application logic layer information system Copyright Springer Verlag Berlin Heidelberg 2004.
CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University March 21, 2005.
© 2002 by Prentice Hall 1 David M. Kroenke Database Processing Eighth Edition Chapter 14 Networks, Multi-Tier Architectures, and XML.
Internet, intranet, and multimedia database processing l Database processing across local and wide area networks l Alternative architectures for distributing.
11/16/2012ISC329 Isabelle Bichindaritz1 Web Database Application Development.
Chapter 17 - Deploying Java Applications on the Web1 Chapter 17 Deploying Java Applications on the Web.
第十四章 J2EE 入门 Introduction What is J2EE ?
Enterprise Java v120131Intro to JavaEE1 Java EE 5 TM Introduction.
® IBM Software Group © 2007 IBM Corporation J2EE Web Component Introduction
Chapter 4 Networking and the Internet. © 2005 Pearson Addison-Wesley. All rights reserved 4-2 Chapter 4: Networking and the Internet 4.1 Network Fundamentals.
CS4273: Distributed System Technologies and Programming Lecture 13: Review.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
Web application architecture1 Based on Jim Conallen: Web Applications with UML.
1 Securing Network Services. 2 How TCP Works Set up connection between port on source host to port on destination host Each connection consists of sequence.
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
Assignment of JAVA id : BSSE-F10-M-10-JAVA1 Overview of J2EE/Session 2/Slide 1 of 38.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
What is J2EE Platform The Java 2 Platform Enterprise Edition (J2EE) defines the standard for developing multitier enterprise applications.
27.1 Chapter 27 WWW and HTTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
WEB SERVER SOFTWARE FEATURE SETS
1 Distributed System using J2EE. 2 What is J2EE?  J2EE (Java2 Enterprise Edition) offers a suite of software specification to design, develop, assemble.
UMass Lowell Computer Science Java and Distributed Computing Prof. Karen Daniels Fall, 2000 Lecture 21 Java Servlets Wed. 11/22/00 based on material.
Application of the Internet 1998/12/09 KEIO University, JAPAN Mikiyo
©NIIT Introducing Enterprise JavaBeans (EJB) Lesson 1A / Slide 1 of 43J2EE Server Components Objectives In this lesson, you will learn about: The features.
Java Programming: Advanced Topics 1 Building Web Applications Chapter 13.
Glink for Java: applet, application and an API for integrating access to Bull, IBM, UNIX and Minitel systems with your Java based e-business applications.
1 The World Wide Web Architectural Overview Static Web Documents Dynamic Web Documents HTTP – The HyperText Transfer Protocol Performance Enhancements.
2 목차 n WebLogic Architecture n J2EE Spec PreView n WebLogic Basic n Weblogic JDBC n Weblogic JNDI n Weblogic EJB Architecture n Weblogic EJB Deployment.
CX Introduction to Web Programming
WWW and HTTP King Fahd University of Petroleum & Minerals
Web Development Web Servers.
Introduction to J2EE Architecture
Distributed System Using Java 2 Enterprise Edition (J2EE)
Presentation transcript:

Chapter 4: Core Web Technologies

Contents - Chapter 1 Exchanging information over the Internet HTTP, HTML URI, URI Web server, web browser Web services for supporting remote clients Applets Common Gateway Interface (CGI) Servlets Application servers Middleware for Web applications J2EE Web technologies for application integration Middleware extensions Firewalls and tunneling

Before and after the web Early protocols, applications Telnet: to log in to a remote machine SMTP: Simple Mail Transfer Protocol FTP: File Transfer Protocol Archie: FTP to create a distributed file system Gopher: GUI for publishing and accessing text files over the Internet Web technologies Web server Web browser HTTP: HyperText Transfer Protocol HTML: HyperText Markup Language URI: Uniform Resource Identifier URL: Uniform Resource Locator

wide area network (Internet) Proxy HTTP tunnel firewall firewall HTTP client HTTP proxy HTTP gateway HTTP server wide area network (Internet) Acts as a server and client Caching Block undesired sites Log usage Bypass blocks Scan outgoing traffic

wide area network (Internet) Gateway HTTP tunnel firewall firewall HTTP client HTTP proxy HTTP gateway HTTP server wide area network (Internet) Acts as an intermediary for a server Keeps machines anonymous Controls access to the network Performs load-balancing, authentication, decryption

wide area network (Internet) Firewall HTTP tunnel firewall firewall HTTP client HTTP proxy HTTP gateway HTTP server wide area network (Internet) Blocks unauthorized access, permits authorized communications permit / deny / encrypt / decrypt / proxy all computer traffic between different security domains

wide area network (Internet) Tunnel HTTP tunnel firewall firewall HTTP client HTTP proxy HTTP gateway HTTP server wide area network (Internet) Acts as a blind relay between two connections Encapsulate protocols within HTTP or SSH (Secure Shell) to get through what the firewall would prevent

Secure Socket Layer (SSL) HTTPS client HTTPS server application layer network layer Secure Sockets Layer (SSL) TCP/IP Normally HTTP traffic is not encrypted, it can be “sniffed” SSL uses public key encryption HTTPS: HyperText Transfer Protocol over Secure sockets layer HTTP “cookies” are used to store data on the client machine

A 3-tier architecture on the web client client HTTP server HTTP client wide area network (Internet) middleware “Let’s put an ATM” in every home” Business-to-consumer (B2C) interaction The web browser is a universal client server (resource manager) Copyright Springer Verlag Berlin Heidelberg 2004

Applets firewall wide area network (Internet) middleware Web server client applet java virtual machine browser wide area network (Internet) HTTP is a document exchange protocol, it’s static Applets are downloadable programs The server sends the appropriate program each time The web browser becomes a universal client Code must be small for rapid transfer middleware server (resource manager) Copyright Springer Verlag Berlin Heidelberg 2004

Common Gateway Interface HTTP GET request Web server browser firewall client CGI program wide area network (Internet) middleware The CGI program is on the server and it has a URL When the URL is accessed, the CGI program is executed and its output is saved as an HTML document This saved document is returned to the web browser which then displays it It is possible to pass parameters to CGI programs server (resource manager) Copyright Springer Verlag Berlin Heidelberg 2004

Servlets firewall HTTP GET request wide area network (Internet) Web server Java server process HTTP GET request firewall browser Java thread client Similar to CGI, but “lightweight” Run as Java threads Saves the cost of context switching Memory efficient Can be stateless wide area network (Internet) middleware server (resource manager) Copyright Springer Verlag Berlin Heidelberg 2004

Application servers CHAPTER 2 FIGURE 2 -section 1.2 firewall other protocols client other servers (email, SOAP,..) Web server browser HTTP firewall presentation layer It’s a middleware platform that provides support for Web access Covers both the application logic and the presentation layer Prepares, dynamically generates, manages document wide area network (Internet) application logic layer connection to resource mgmt layer CHAPTER 2 FIGURE 2 -section 1.2 application server resource management layer Copyright Springer Verlag Berlin Heidelberg 2004

J2EE – main components support for communication and presentation Servlets JavaServer Pages (JSP) Java API for XML Processing (JAXP) JavaMail support for communication and presentation Java Authentication and Authorization Service (JAAS) Enterprise Java Beans (EJB) Java transaction API (JTA) support for the application integration Java Message Service (JMS) Java Naming and Directory Interface (JNDI) Java DataBase Connectivity (JDBC) Java 2 Connector Architecture (J2CA) support for access to resource managers Copyright Springer Verlag Berlin Heidelberg 2004

presentation layer application logic layer EJB EJB EJB (load balancing, pooling, caching, transaction, persistence,…) services EJB container (management and security) administration JNDI JMS JDBC J2CA resource adapter J2CA resource adapter other adapters application server DBMS applications enterprise system 1 enterprise system 2 enterprise system n Copyright Springer Verlag Berlin Heidelberg 2004

application logic layer client servers for other connections (e.g., WAP) E-mail server Web server multidevice content delivery (load balancing, pooling, caching,…) services Servlets JSPs XML support Web services support (management and security) administration personalization logic presentation layer application logic layer connection to resource mgmt layer application server resource management layer Copyright Springer Verlag Berlin Heidelberg 2004

Possible ways to connect client client middleware wide area network (Internet) middleware server (resource manager) server (resource manager) Copyright Springer Verlag Berlin Heidelberg 2004

Direct integration of middleware platforms client client middleware middleware remote-middleware protocol remote-middleware protocol WAN communication protocol wide area network (Internet) WAN communication protocol server (resource manager) server (resource manager) Copyright Springer Verlag Berlin Heidelberg 2004

wide area network (Internet) HTTP tunnel firewall firewall client Web server Web server client wide area network (Internet) middleware middleware remote-middleware protocol remote-middleware protocol WAN communication protocol WAN communication protocol server (resource manager) server (resource manager) Copyright Springer Verlag Berlin Heidelberg 2004

Summary Decades of accumulated knowledge on multi-tier architectures Use the same technology over the Internet The client can be on A Local Area Network (LAN) Over the Internet Architectural implications and design constraints from using the Web are important