What does WEB-INF stand for in a Java EE web application?
ServletsJakarta EeWeb ApplicationsWeb InfServlets Problem Overview
Most of the places on the internet say it stands for WEB INFormation.
I rather doubt it. The folder contains executables. Information is not a suitable name for it.
Servlets Solutions
Solution 1 - Servlets
As far as I know, "INF" stands for "Information", as you said. It probably was named WEB-INF
for similarity with the META-INF
directory in JAR files. Sometimes the meaning of a directory changes so much over time that it no longer makes sense. For example, bin
directories in Unix/Linux often contain non-binary "executable" files, such as shell scripts.
Solution 2 - Servlets
I believe it's really named WEB-INF to mirror the META-INF directory in a jar file, which contains meta information. I do see what you mean about it being as much about executables as "information" but the main point is that it doesn't contain the documents of the application.
Solution 3 - Servlets
It's a directory to store private application content. Anything your app needs but your client doesn't can be stored there. Anything in that directory is not visible to the web.
Source:
http://tomcat.apache.org/tomcat-7.0-doc/appdev/source.html#Directory_Structure http://docs.oracle.com/cd/E13222_01/wls/docs70/webapp/basics.html#136976
Solution 4 - Servlets
I think, the only logical definition is WEB-INF is mirror of META-INF. Naming is really important for beginners and if it is confusing then the subject is getting harder to understand.
Solution 5 - Servlets
The WEB_INF
folder contains the web.xml
(deployment descriptor) file, the classes, external libs etc and as web.xml
file contains the information about the container urls, files etc, the folder is known as WEB-INF
.