Read The Spec
See the official document defining the Web Profile of Java EE 7. Short, 20 pages, easy to read.
Piling On Libraries
In addition to the technology included in the Standard Edition Java (Java SE), the following components are required to be provided by any web app server claiming compliance with the Web Profile. Find this list in the Wikipedia page on Java EE and this Oracle white paper of 2013.
- Servlet 3.1 (JSR 340)
- JavaServer Pages (JSP) 2.2 (JSR 245)
- Expression Language (EL) 3.0 (JSR 341)
- Debugging Support for Other Languages (JSR 45) 1.0
- Standard Tag Library for JavaServer Pages (JSTL) 1.2
- JavaServer Faces (JSF) 2.2
- Java API for RESTful Web Services (JAX-RS) 2.0
- Common Annotations for the Java Platform (JSR 250) 1.1
- Enterprise JavaBeans (EJB) 3.2 Lite
- Java Transaction API (JTA) 1.2
- Java Persistence API (JPA) 2.1
- Bean Validation 1.1
- Managed Beans 1.0
- Interceptors 1.1
- Contexts and Dependency Injection for the Java EE Platform 1.1
- Dependency Injection for Java 1.0
Keep It Simple
Java SE --> Servlet/JSP --> Web Profile (partial Java EE) --> Full Java EE
Generally best to keep it simple. If all you need is Servlets/JSP, then use Java SE (regular Java) and add the Servlet-related jars, with a Servlet engine ("container") such as Tomcat or Jetty. Many, many people do this. Such configurations are not recognized officially as "Enterprise Edition" but nevertheless may be all you need for your enterprise app. For example, that's all I need to build apps in Vaadin: Java 8 SE on Mac OS X with NetBeans 8 and Tomcat 8.
If you need some of the technologies listed above, first see if you can simply add some jars to your Java SE environment. For example, such is the case with Bean Validation. But some technologies may require support built into your server. Or you may reach the point where you want such libraries already installed and updated for you as a matter of convenience. If so, move up to a Web Profile server such as the TomEE project, an extended version of Tomcat.
If you need the technologies included in a "full", then move up to something like Glassfish.
See my longer Answer on a duplicate of this Question.
