260 likes | 418 Views
Web Application Development. Lec 25. Web Application Development. we used J2SE until now For web application development, we need J2EE (Servlets API, JSP API, JSF API etc). Web Based Performance Review Management System. Web Based School Management System. What is a Web Application.
E N D
Web Application Development Lec 25
Web Application Development • we used J2SE until now • For web application development, we need J2EE (Servlets API, JSP API, JSF API etc)
HTTP Communication Model • A communications model • Client, often but not always a web browser, • sends a request for a resource to a server. • The server returns a response or an error message. • Stateless • No immediate feedback • No details on how request is made
HTTP Communication Model • Different clients like • Web browsers • FTP clients (e.g., interarchy on MacOS X) • Software registration programs • telnet
HTTP Communication Model Web Server? Software that provides services to access the Internet, or an intranet. A web server hosts web sites Provides support for HTTP and other protocols Executes server-side programs (such as CGI scripts or servlets) that perform certain functions.
HTTP Basics • HTTP is a request-response oriented protocol. • Parts of an HTTP request • Request Method • URI • Header Fields • Body • HTTP response contains • Result Code • Header Fields • Body
HTTP Request Example Request parameters etc
Request Parameters • Request can also contain additional info in the form of parameters • In the URL itself as a query string http://www.gmail.com/register?name=ali&state=punjab • As part of the request body • Shown earlier in the diagram
HTTP Response Codes • Codes fall into five general categories • 100-199 • Codes in the 100s are informational, indicating that the client should respond with some other action. • 200-299 • Values in the 200s signify that the request was successful. • 300-399 • Values in the 300s are used for files that have moved and usually include a Location header indicating the new address. • 400-499 • Values in the 400s indicate an error by the client. • 500-599 • Codes in the 500s signify an error by the server.
Common HTTP Response Codes • 200: means every thing is fine. • 404: Indicates that the requested resource is not available • 401: Indicates that the request requires HTTP authentication • 403: Indicates that access to the requested resource has been denied • 503: Indicates that the HTTP server is temporarily overloaded and unable to handle the request
Static Pages 1 - Request file 2 - Retrieve file 3 - Send file
Dynamic Pages 1 - Request service Do Computation Generate HTML page with results of computation Return dynamically generated HTML file
Why build Pages Dynamically? • The Web page is based on data submitted by the user • E.g. results page from search engines and order confirmation pages at on line stores • The Web page is derived from data that changes frequently • E.g. a weather report or news headlines page • The Web page uses information from databases or other server-side resources • E.g. an e-commerce site could use a servlet to build a Web page that lists the current price and availability of each item that is for sale\ • Course Registration System
What is Server-Side Programming (SSP)? • Technologies for developing web pages that include dynamic content. • Can produce web pages that contain information that is connection- or time-dependent.
Dynamic Web Content Technologies Evolution (only figure) CGI (in C) CGI (java, C++) Template (ASP, PHP,CFML) complexity Speed, Security Servlet (Java) JSP
Web-Based Enterprise Applications in Java Figure shows a simplified view of one application and its layers.