| icon | 0 or 1 | A display file, for use in GUI administration tools | 
| display-name | 0 or 1 | Short name, for use in GUI admin tools | 
| description | 0 or 1 | Longer description | 
| distributable | 0 or 1 | Whether the web application can be load-balanced, i.e., distributed to multiple servers | 
| context-param | 0 or more | Parameters to be made available to all servlets | 
| filter | 0 or more | Provides a general-purpose servlet-based filtering mechanism | 
| filter-mapping | 0 or more | Maps the invocation of a filter to either a servlet name or a URL pattern | 
| listener | 0 or more | Context or session Listener classes | 
| servlet | 0 or more | Short name, class name, and options for a servlet | 
| servlet-mapping | 0 or more | Specifies any nondefault URL for a servlet | 
| session-config | 0 or 1 | Specifies session configuration (only session timeout in present version of specification) | 
| mime-mapping | 0 or more | MIME types for files on server | 
| welcome-file- list | 0 or 1 | Alternate default page in directories | 
| error-page | 0 or more | Alternate error page by HTTP error code | 
| taglib | 0 or more | Tag library; see the section on the taglib element, later in this chapter | 
| resource-env-ref | 0 or more | Reference to "administered objects," such as JMS queues | 
| resource-ref | 0 or more | Reference to JNDI factory for objects such as SQL DataSources | 
| security- constraint | 0 or more | Requires authentication (e.g., for a protected area of a web site) | 
| login-config | 0 or 1 | Specifies how the login mechanism is to work for a security-constraint | 
| security-role | 0 or more | List name of security role, for use with security-constraint | 
| env-entry | 0 or more | JNDI lookup of static objects | 
| ejb-ref | 0 or more | Reference to EJBs used by servlets | 
| ejb-local-ref | 0 or more | Reference to EJB local interfaces used by servlets |