A Java web application generates interactive web pages containing various types of markup language (HTML, XML, and so on) and dynamic content. It is typically comprised of web components such as JavaServer Pages (JSP), servlets and JavaBeans to modify and temporarily store data, interact with databases and web services, and render content in response to client requests.
Because many of the tasks involved in web application development can be repetitive or require a surplus of boilerplate code, web frameworks can be applied to alleviate the overhead associated with common activities. For example, many frameworks, such as JavaServer Faces, provide libraries for templating pages and session management, and often promote code reuse.
Java EE (Enterprise Edition) is a widely used platform containing a set of coordinated technologies that significantly reduce the cost and complexity of developing, deploying, and managing multi-tier, server-centric applications. Java EE builds upon the Java SE platform and provides a set of APIs (application programming interfaces) for developing and running portable, robust, scalable, reliable and secure server-side applications.
Some of the fundamental components of Java EE include:
Tutorials and Articles
NetBeans E-commerce Tutorial
Contexts and Dependency Injection
Developing Java Web Applications
EJB Technology and Java Persistence
OSGi-enabled Java EE Applications by Arun Gupta (YouTube)
Java EE 6 Video Tutorial by Arun Gupta (YouTube)
Tutorials and Other Docs