Presentation is loading. Please wait.

Presentation is loading. Please wait.

Web Applications Harry R. Erwin, PhD University of Sunderland CIT304/CSE301.

Similar presentations


Presentation on theme: "Web Applications Harry R. Erwin, PhD University of Sunderland CIT304/CSE301."— Presentation transcript:

1 Web Applications Harry R. Erwin, PhD University of Sunderland CIT304/CSE301

2 Resources Hans Bergsten, 2002, JavaServer Pages, 2nd edition, O’Reilly, ISBN: 0-596-00317-X http://java.sun.com/products/jsp/ http://www.apl.jhu.edu/~hall/java/Servlet-Tutorial/ Farley, et al., 2002, Java Enterprise in a Nutshell, 2nd edition, O’Reilly, ISBN: 0-596-00152-5 Brittain and Darwin, 2003, Tomcat: the Definitive Guide, O’Reilly. Kurniawan and Deck, 2004, How Tomcat Works, BrainySoftware.com. Knuckles and Yuen, 2005, Web Applications: Concepts and Real World Design, Wiley. Nakhimovsky and Myers, 2004, Google, Amazon and Beyond, Apress.

3 What is a Web Application? According to Wikipedia: –In software engineering, a Web application or webapp is an application that is accessed with a Web browser over a network such as the Internet or an intranet. –Web applications are popular due to the ubiquity of the browser as a thin client. –The ability to update and maintain Web applications without distributing and installing software on client computers is a key reason for their popularity. –Web applications are used to implement webmail, online retail sales, online auctions, wikis, discussion boards, Weblogs, MMORPGs and many other functions.

4 W3C Comments Many developers are using the Web as a platform- independent application environment. Examples of Web applications include reservation systems, online shopping or auction sites, games, multimedia applications, calendars, maps, chat applications, clocks, interactive design applications, stock tickers, currency converters and data entry/display systems. A number of different proprietary and platform-specific technologies have targeted application development on the Web. Should standards be defined to ease this?

5 Typical Web Applications (W3C) Web applications typically have some form of programmatic control, either on the client, on the server or a combination of both. A Web application is typically downloaded on demand each time it is "executed", allowing a developer to update the application for all users when needed. Web applications are usually smaller than regular desktop applications, and can have rich graphical interactive interfaces.

6 Questions To Consider (W3C) What functionality is needed for Web applications? What should the hosting environment provide? How much of a Web application should be declarative? How much should be in script? How are webapps related to Web documents, which are normally static?

7 User Interface Issues (W3C) Is there a need for a standard set of user interface controls? Should these controls use the native platform look and feel? What APIs are needed for Web applications (eg. retrieving and sending data over the network, parsing XML, client-side storage)?

8 Packaging Questions (W3C) How should a Web application and its related resources (e.g. images, sounds) be packaged? What security issues need to be addressed? ・ To what extent can application behaviour be usefully abstracted from platform specific details of UI controls? How can the application integrate different modality interfaces (eg. voice, pen, keystrokes)? How to address richer models of interaction management that go beyond simple event handlers?

9 Struts as an Approach According to the website, Apache Struts is a free open- source framework for creating Java web applications. Web applications differ from conventional websites in that they can create a dynamic response. They can interact with databases and business logic engines to customize a response. Web applications based on JavaServer Pages often commingle database code, page design code, and control flow code. Unless these concerns are separated, larger applications become difficult to maintain.

10 What is Struts? The Struts framework is designed to help developers create web applications that utilize a Model-View- Controller (MVC) architecture. The framework provides three key components: –A "request" handler provided by the application developer that is mapped to a standard URI. –A "response" handler that transfers control to another resource which completes the response. –A tag library that helps developers create interactive form- based applications with server pages. Struts works well with conventional REST applications and with new technologies like SOAP and AJAX.

11 Topics to be Covered JSP1.ppt—basics of server-side development. JSP2.ppt—Java Server Pages JSP3.ppt—Scripting JSP JSP4.ppt—running Jakarta/Tomcat JSP5.ppt—Introduction to Structs

12 Perspectives For students from the Business School, look at managing web application development and understanding the options available to you. For students from the School of Computing, we will discuss developing web applications. The tutorials are for people who want to explore further.


Download ppt "Web Applications Harry R. Erwin, PhD University of Sunderland CIT304/CSE301."

Similar presentations


Ads by Google