In the Oracle java site http://www.oracle.com/technetwork/java/javaee/downloads/index-jsp-140710.html,
There are Java EE SDK download and the Java EE Web Profile download.
Which one should I install?
In the Oracle java site http://www.oracle.com/technetwork/java/javaee/downloads/index-jsp-140710.html,
There are Java EE SDK download and the Java EE Web Profile download.
Which one should I install?
The package of the oracle java site just a GlassFish Open Source Application Server, API Documentation and some sample codes .
The differences between web profile edition and the full edition is that the web profile edition only provides a subset of the Java EE platform .It is designed for web application development which only includes those technologies needed by most web application , and excludes those enterprise technologies that are typically don't needed by the web application (Like JMS and web services)
See this about the difference of the technologies included in GlassFish 's web profile edition and full edition
See the official document defining the Web Profile of Java EE 7. Short, 20 pages, easy to read.
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.
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.
I had practically the same question and this SO answer came up very high in the search results. I eventually found this article, Introducing the Java EE Web Profile, which does an excellent job of covering the subject, at the very least from a sys admin's perspective. In particular, the 2nd graphic really captures it in a 'picture tells a thousand words' way.
The 2nd part of the article then goes into details geared towards Java programmers.