The course is part of this learning path
This course explores the fundamentals of web applications, JavaServer Faces, and then walks you through a variety of projects that will give you a practical demonstration of how to create a web application and how to use various components of JavaServer Faces.
- Understand the fundamentals of web applications
- Learn about JavaServer Faces, and how they can be used in your applications
This course is intended for anyone who already has basic knowledge of Java and now wants to learn about Java EE.
Basic knowledge of Java programming.
Unlike the mobile application, there is no specific tool for developing web applications. We can use any of the supported IDE for developing the web application. Web application is a dynamic extension of a web or application server. Web applications have two types: Presentation-oriented and service-oriented. A presentation-oriented web application generates interactive web pages containing various types of markup language like HTML, XHTML, XML, and so on, and dynamic content in response to requests.
A service-oriented web application implements the endpoint of a web service. Presentation-oriented applications are often clients of service-oriented web applications. In the Java EE platform, web components provide the dynamic extension capabilities for a web server. Web components can be Java Servlets, web pages implemented with Java Server Faces technology, web service endpoints, or JSP pages. This image illustrates the interaction between a web client and a web application that uses a servlet. The client sends an HTTP request to the web server. A web server that implements Java Servlet and Java Server Pages Technology converts the request into an HTTPServletRequest object. This object is delivered to a web component which can interact with JavaBeans components or a database to generate dynamic content. The web component can then generate an HTTPServletResponse or can pass the request to another web component.
A web component eventually generates an HTTPServletResponse object. The web server converts this object to an HTTP response and returns it to the client. The web server is a process that handles the client's request and response. It processes the request made by the client using the related protocols. The main function of the web server is to store the request and respond to them with web pages. It is a medium between client and server. Apache, for example, is a popular web server.
However, for our course, we will use Oracle GlassFish, which we installed in the previous video. A client is a software that allows users to request and assist them in communicating with the server. The web browsers are the clients in a web application. Some leading clients are Google Chrome, Firefox, Safari, Internet Explorer, etc. Web applications are by nature distributed applications, meaning that they are programs that run on more than one computer and communicate through a network or server.
Specifically, web applications are accessed with a web browser and are popular because of the ease of using the browser as a user client. For the enterprise, the ability to update and maintain web applications without deploying and installing software on potentially thousands of client computers is a key reason for their popularity. Web applications are used for web mail, online retail sales, discussion boards, weblogs, online banking, and more. One web application can be accessed and used by millions of people.
There are many technologies that you can use while making Java Web applications on the Java EE platform. These technologies are: Java Servlet API, Java Server Pages, Java Server Pages Standard Tag Library, Java Server Faces, Java Message Service API, Java Mail API, Java API for XML processing, JDBC API, Java Persistence API. In this course, we will focus on servlet JSP, JSF, and JMS. Let's continue with the life cycle of web applications. A web application consists of web components. These components are static resource files, such as images, helper classes, and libraries. The web container provides many supporting services that enhance the capabilities of web components and make them easier to develop. However, because a web application must take these services into account, the process for creating and running a web application is different from that of traditional stand-alone Java classes.
We can say that the process of creating a web application basically consists of six steps, from deployment and purpose. Develop the web component code. Develop the web application deployment descriptor, if necessary. Compile the web application components and helper classes referenced by the components. Optionally, package the application into a deployable unit. Deploy the application into a web container. Access a URL that references the web application. The final important topic of this video is development rules. Let's now cover these. The web tier is the face of an enterprise application and requires specific developers to build applications used in the web. Web designer, interface designer for web browser-based applications. Information architect creates the vision for site navigation and templating. A web designer fulfills the role of the interface designer for browser-based client applications. If the source code for the view components is sufficiently decoupled from the framework that manages the web tier, then the role of the web designer is purely a client tier concern.
Otherwise, the web designing and developing might need to be handled by individuals fluent in the concerns of both the client and the web tiers. The web developer implements all aspects of the web tier. This person must also work closely with the web interface designer to ensure that domain entities and content are properly integrated into the XHTML presentation components. They might also develop the client proxies and business delegates to the business tier components.
OAK Academy is made up of tech experts who have been in the sector for years and years and are deeply rooted in the tech world. They specialize in critical areas like cybersecurity, coding, IT, game development, app monetization, and mobile development.