Root Element

ElementDescriptionClass
jettyCreates anorg.mortbay.jetty.xbean.JettyFactoryBean

Element Summary

ElementDescriptionClass
bioConnectorCreates a BIO based socket connectororg.mortbay.jetty.bio.SocketConnector
blockingNioConnectorCreates a blocking NIO based socket connectororg.mortbay.jetty.nio.BlockingChannelConnector
contextHandlerCreates a basic HTTP contextorg.mortbay.jetty.handler.ContextHandler
contextsContextHandlerCollection. This {@link org.mortbay.jetty.handler.HandlerCollection} is creates a {@link org.mortbay.jetty.servlet.PathMap} to it's contained handlers based on the context path and virtual hosts of any contained {@link org.mortbay.jetty.handler.ContextHandler}s. The contexts do not need to be directly contained, only children of the contained handlers. Multiple contexts may have the same context path and they are called in order until one handles the request.org.mortbay.jetty.handler.ContextHandlerCollection
defaultHandlerDefault Handler. This handle will deal with unhandled requests in the server. For requests for favicon.ico, the Jetty icon is served. For reqests to '/' a 404 with a list of known contexts is served. For all other requests a normal 404 is served. TODO Implement OPTIONS and TRACE methods for the server.org.mortbay.jetty.handler.DefaultHandler
handlerCollectionA collection of handlers. For each request, all handler are called, regardless of the response status or exceptions.org.mortbay.jetty.handler.HandlerCollection
hotDeployerCreates a hot deployerorg.mortbay.jetty.deployer.ContextDeployer
jaasUserRealmCreates a UserRealm suitable for use with JAASorg.mortbay.jetty.plus.jaas.JAASUserRealm
jettyCreates anorg.mortbay.jetty.xbean.JettyFactoryBean
ncsaLogThis {@link RequestLog} implementation outputs logs in the pseudo-standard NCSA common log format. Configuration options allow a choice between the standard Common Log Format (as used in the 3 log format) and the Combined Log Format (single log format). This log format can be output by most web servers, and almost all web log analysis software can understand these formats.org.mortbay.jetty.NCSARequestLog
nioConnectorCreates an NIO based socket connectororg.mortbay.jetty.nio.SelectChannelConnector
requestLogHandlerRequestLogHandler. This handler can be used to wrap an individual context for context logging.org.mortbay.jetty.handler.RequestLogHandler
resourceHandlerResource Handler. This handle will serve static content and handle If-Modified-Since headers. No caching is done. Requests that cannot be handled are let pass (Eg no 404's)org.mortbay.jetty.handler.ResourceHandler
serverCreates an embedded Jetty web serverorg.mortbay.jetty.Server
sslConnectorCreates an NIO ssl connectororg.mortbay.jetty.ssl.SslSelectChannelConnector
sslSocketConnectorCreates an ssl socket connectororg.mortbay.jetty.ssl.SslSocketConnector
ssoJaasUserRealmCreates a UserRealm suitable for use with JAAS w/ support of SSOorg.mortbay.jetty.plus.jaas.SSOJAASUserRealm
strictRoleCheckPolicyCheck only topmost role in stack of roles for userorg.mortbay.jetty.plus.jaas.StrictRoleCheckPolicy
webAppContextCreates a servlet web application at a given context from a resource baseorg.mortbay.jetty.webapp.WebAppContext

Element Detail

Element: bioConnector

AttributeTypeDescription
acceptQueueSizexs:integer
acceptorPriorityOffsetxs:integerSet the priority offset of the acceptor threads. The priority is adjusted by this amount (default 0) to either favour the acceptance of new threads and newly active connections or to favour the handling of already dispatched connections.
acceptorsxs:integer
confidentialPortxs:integer
confidentialSchemexs:string
forwardedxs:booleanIs reverse proxy handling on?
forwardedForHeaderxs:string
forwardedHostHeaderxs:string
forwardedServerHeaderxs:string
headerBufferSizexs:integer
hostxs:string
hostHeaderxs:stringSet a forced valued for the host header to control what is returned by {@link ServletRequest#getServerName()} and {@link ServletRequest#getServerPort()}. This value is only used if {@link #isForwarded()} is true.
integralPortxs:integer
integralSchemexs:string
lowResourceMaxIdleTimexs:integer
maxIdleTimexs:integerSet the maximum Idle time for a connection, which roughly translates to the {@link Socket#setSoTimeout(int)} call, although with NIO implementations other mechanisms may be used to implement the timeout. The max idle time is applied:
  • When waiting for a new request to be received on a connection
  • When reading the headers and content of a request
  • When writing the headers and content of a response
Jetty interprets this value as the maximum time between some progress being made on the connection. So if a single byte is read or written, then the timeout (if implemented by jetty) is reset. However, in many instances, the reading/writing is delegated to the JVM, and the semantic is more strictly enforced as the maximum time a single read/write operation can take. Note, that as Jetty supports writes of memory mapped file buffers, then a write may take many 10s of seconds for large content written to a slow device.

Previously, Jetty supported separate idle timeouts and IO operation timeouts, however the expense of changing the value of soTimeout was significant, so these timeouts were merged. With the advent of NIO, it may be possible to again differentiate these values (if there is demand).

namexs:string
portxs:integer
requestBufferSizexs:integer
resolveNamesxs:boolean
responseBufferSizexs:integer
reuseAddressxs:boolean
soLingerTimexs:integer
statsOnxs:boolean
ElementTypeDescription
serverjetty | server
threadPool<spring:bean/>

Element: blockingNioConnector

AttributeTypeDescription
acceptQueueSizexs:integer
acceptorPriorityOffsetxs:integerSet the priority offset of the acceptor threads. The priority is adjusted by this amount (default 0) to either favour the acceptance of new threads and newly active connections or to favour the handling of already dispatched connections.
acceptorsxs:integer
confidentialPortxs:integer
confidentialSchemexs:string
forwardedxs:booleanIs reverse proxy handling on?
forwardedForHeaderxs:string
forwardedHostHeaderxs:string
forwardedServerHeaderxs:string
headerBufferSizexs:integer
hostxs:string
hostHeaderxs:stringSet a forced valued for the host header to control what is returned by {@link ServletRequest#getServerName()} and {@link ServletRequest#getServerPort()}. This value is only used if {@link #isForwarded()} is true.
integralPortxs:integer
integralSchemexs:string
lowResourceMaxIdleTimexs:integer
maxIdleTimexs:integerSet the maximum Idle time for a connection, which roughly translates to the {@link Socket#setSoTimeout(int)} call, although with NIO implementations other mechanisms may be used to implement the timeout. The max idle time is applied:
  • When waiting for a new request to be received on a connection
  • When reading the headers and content of a request
  • When writing the headers and content of a response
Jetty interprets this value as the maximum time between some progress being made on the connection. So if a single byte is read or written, then the timeout (if implemented by jetty) is reset. However, in many instances, the reading/writing is delegated to the JVM, and the semantic is more strictly enforced as the maximum time a single read/write operation can take. Note, that as Jetty supports writes of memory mapped file buffers, then a write may take many 10s of seconds for large content written to a slow device.

Previously, Jetty supported separate idle timeouts and IO operation timeouts, however the expense of changing the value of soTimeout was significant, so these timeouts were merged. With the advent of NIO, it may be possible to again differentiate these values (if there is demand).

namexs:string
portxs:integer
requestBufferSizexs:integer
resolveNamesxs:boolean
responseBufferSizexs:integer
reuseAddressxs:boolean
soLingerTimexs:integer
statsOnxs:boolean
useDirectBuffersxs:boolean
ElementTypeDescription
serverjetty | server
threadPool<spring:bean/>

Element: contextHandler

AttributeTypeDescription
aliasesxs:boolean
allowNullPathInfoxs:boolean
compactPathxs:boolean
contextPathxs:string
displayNamexs:string
maxFormContentSizexs:integer
resourceBasexs:string
shutdownxs:booleanSet shutdown status. This field allows for graceful shutdown of a context. A started context may be put into non accepting state so that existing requests can complete, but no new requests are accepted.
ElementTypeDescription
attributescontextHandler | jetty | server | webAppContext
baseResource<spring:bean/>
classLoader<spring:bean/>
connectorNames(<spring:bean/>)*Set the names of accepted connectors. Names are either "host:port" or a specific configured name for a connector.
errorHandler<spring:bean/>
eventListeners(<spring:bean/>)*Set the context event listeners.
handlercontextHandler | contexts | defaultHandler | handlerCollection | jetty | requestLogHandler | resourceHandler | server | webAppContext
hosts(<spring:bean/>)*Get the hosts for the context.
initParams<spring:bean/>
logger<spring:bean/>
mimeTypes<spring:bean/>
parentcontextHandler | contexts | handlerCollection | jetty | requestLogHandler | server | webAppContext
serverjetty | server
virtualHosts(<spring:bean/>)*Get the virtual hosts for the context. Only requests that have a matching host header or fully qualified URL will be passed to that context with a virtual host name. A context with no virtual host names or a null virtual host name is available to all requests that are not served by a context with a matching virtual host name.
welcomeFiles(<spring:bean/>)*

Element: contexts

AttributeTypeDescription
contextClassxs:string
ElementTypeDescription
handlers(contextHandler | contexts | defaultHandler | handlerCollection | jetty | requestLogHandler | resourceHandler | server | webAppContext)*
serverjetty | server

Element: defaultHandler

AttributeTypeDescription
serveIconxs:boolean
ElementTypeDescription
serverjetty | server

Element: handlerCollection

ElementTypeDescription
handlers(contextHandler | contexts | defaultHandler | handlerCollection | jetty | requestLogHandler | resourceHandler | server | webAppContext)*
serverjetty | server

Element: hotDeployer

AttributeTypeDescription
directoryxs:string
recursivexs:boolean
scanIntervalxs:integer
ElementTypeDescription
configurationDir<spring:bean/>
configurationManager<spring:bean/>
contextscontextsAssociate with a {@link ContextHandlerCollection}.

Element: jaasUserRealm

AttributeTypeDescription
callbackHandlerClassxs:string
loginModuleNamexs:stringSet the name to use to index into the config file of LoginModules.
namexs:stringGet the name of the realm.
ElementTypeDescription
roleCheckPolicystrictRoleCheckPolicy
roleClassNames(<spring:bean/>)*

Element: jetty

AttributeTypeDescription
gracefulShutdownxs:integerSet graceful shutdown timeout. If set, the {@link #doStop()} method will not immediately stop the server. Instead, all {@link Connector}s will be closed so that new connections will not be accepted and all handlers that implement {@link Graceful} will be put into the shutdown mode so that no new requests will be accepted, but existing requests can complete. The server will then wait the configured timeout before stopping.
sendDateHeaderxs:boolean
sendServerVersionxs:boolean
stopAtShutdownxs:boolean
ElementTypeDescription
connectors(bioConnector | blockingNioConnector | nioConnector | sslConnector | sslSocketConnector)*Set the connectors for this server. Each connector has this server set as it's ThreadPool and its Handler.
deployers(<spring:bean/>)*
handlercontextHandler | contexts | defaultHandler | handlerCollection | jetty | requestLogHandler | resourceHandler | server | webAppContext
handlers(contextHandler | contexts | defaultHandler | handlerCollection | jetty | requestLogHandler | resourceHandler | server | webAppContext)*
hotDeployerhotDeployer
serverjetty | server
sessionIdManager<spring:bean/>
threadPool<spring:bean/>
userRealms(jaasUserRealm | ssoJaasUserRealm)*

Element: ncsaLog

AttributeTypeDescription
appendxs:boolean
extendedxs:boolean
filenamexs:string
filenameDateFormatxs:stringSet the log file date format.
logCookiesxs:boolean
logDateFormatxs:string
logLatencyxs:boolean
logServerxs:boolean
logTimeZonexs:string
preferProxiedForAddressxs:boolean
retainDaysxs:integer
ElementTypeDescription
ignorePaths(<spring:bean/>)*

Element: nioConnector

AttributeTypeDescription
acceptQueueSizexs:integer
acceptorPriorityOffsetxs:integerSet the priority offset of the acceptor threads. The priority is adjusted by this amount (default 0) to either favour the acceptance of new threads and newly active connections or to favour the handling of already dispatched connections.
acceptorsxs:integer
confidentialPortxs:integer
confidentialSchemexs:string
forwardedxs:booleanIs reverse proxy handling on?
forwardedForHeaderxs:string
forwardedHostHeaderxs:string
forwardedServerHeaderxs:string
headerBufferSizexs:integer
hostxs:string
hostHeaderxs:stringSet a forced valued for the host header to control what is returned by {@link ServletRequest#getServerName()} and {@link ServletRequest#getServerPort()}. This value is only used if {@link #isForwarded()} is true.
integralPortxs:integer
integralSchemexs:string
lowResourceMaxIdleTimexs:integerSet the period in ms that a connection is allowed to be idle when this there are more than {@link #getLowResourcesConnections()} connections. This allows the server to rapidly close idle connections in order to gracefully handle high load situations.
lowResourcesConnectionsxs:longSet the number of connections, which if exceeded places this manager in low resources state. This is not an exact measure as the connection count is averaged over the select sets.
lowResourcesMaxIdleTimexs:longSet the period in ms that a connection is allowed to be idle when this there are more than {@link #getLowResourcesConnections()} connections. This allows the server to rapidly close idle connections in order to gracefully handle high load situations.
maxIdleTimexs:integer
namexs:string
portxs:integer
requestBufferSizexs:integer
resolveNamesxs:boolean
responseBufferSizexs:integer
reuseAddressxs:boolean
soLingerTimexs:integer
statsOnxs:boolean
useDirectBuffersxs:boolean
ElementTypeDescription
serverjetty | server
threadPool<spring:bean/>

Element: requestLogHandler

ElementTypeDescription
handlercontextHandler | contexts | defaultHandler | handlerCollection | jetty | requestLogHandler | resourceHandler | server | webAppContext
requestLogncsaLog
serverjetty | server

Element: resourceHandler

AttributeTypeDescription
cacheControlxs:string
resourceBasexs:string
ElementTypeDescription
baseResource<spring:bean/>
mimeTypes<spring:bean/>
serverjetty | server
welcomeFiles(<spring:bean/>)*

Element: server

AttributeTypeDescription
gracefulShutdownxs:integerSet graceful shutdown timeout. If set, the {@link #doStop()} method will not immediately stop the server. Instead, all {@link Connector}s will be closed so that new connections will not be accepted and all handlers that implement {@link Graceful} will be put into the shutdown mode so that no new requests will be accepted, but existing requests can complete. The server will then wait the configured timeout before stopping.
portxs:integer
sendDateHeaderxs:boolean
sendServerVersionxs:boolean
stopAtShutdownxs:boolean
ElementTypeDescription
connectors(bioConnector | blockingNioConnector | nioConnector | sslConnector | sslSocketConnector)*Set the connectors for this server. Each connector has this server set as it's ThreadPool and its Handler.
handlercontextHandler | contexts | defaultHandler | handlerCollection | jetty | requestLogHandler | resourceHandler | server | webAppContext
handlers(contextHandler | contexts | defaultHandler | handlerCollection | jetty | requestLogHandler | resourceHandler | server | webAppContext)*
serverjetty | server
sessionIdManager<spring:bean/>
threadPool<spring:bean/>
userRealms(jaasUserRealm | ssoJaasUserRealm)*

Element: sslConnector

AttributeTypeDescription
acceptQueueSizexs:integer
acceptorPriorityOffsetxs:integerSet the priority offset of the acceptor threads. The priority is adjusted by this amount (default 0) to either favour the acceptance of new threads and newly active connections or to favour the handling of already dispatched connections.
acceptorsxs:integer
algorithmxs:string
confidentialPortxs:integer
confidentialSchemexs:string
forwardedxs:booleanIs reverse proxy handling on?
forwardedForHeaderxs:string
forwardedHostHeaderxs:string
forwardedServerHeaderxs:string
headerBufferSizexs:integer
hostxs:string
hostHeaderxs:stringSet a forced valued for the host header to control what is returned by {@link ServletRequest#getServerName()} and {@link ServletRequest#getServerPort()}. This value is only used if {@link #isForwarded()} is true.
integralPortxs:integer
integralSchemexs:string
keyPasswordxs:string
keystorexs:string
keystoreTypexs:string
lowResourceMaxIdleTimexs:integerSet the period in ms that a connection is allowed to be idle when this there are more than {@link #getLowResourcesConnections()} connections. This allows the server to rapidly close idle connections in order to gracefully handle high load situations.
lowResourcesConnectionsxs:longSet the number of connections, which if exceeded places this manager in low resources state. This is not an exact measure as the connection count is averaged over the select sets.
lowResourcesMaxIdleTimexs:longSet the period in ms that a connection is allowed to be idle when this there are more than {@link #getLowResourcesConnections()} connections. This allows the server to rapidly close idle connections in order to gracefully handle high load situations.
maxIdleTimexs:integer
namexs:string
needClientAuthxs:booleanSet the value of the needClientAuth property
passwordxs:string
portxs:integer
protocolxs:string
providerxs:string
requestBufferSizexs:integer
resolveNamesxs:boolean
responseBufferSizexs:integer
reuseAddressxs:boolean
secureRandomAlgorithmxs:string
soLingerTimexs:integer
sslKeyManagerFactoryAlgorithmxs:string
sslTrustManagerFactoryAlgorithmxs:string
statsOnxs:boolean
trustPasswordxs:string
truststorexs:string
truststoreTypexs:string
useDirectBuffersxs:boolean
wantClientAuthxs:boolean
ElementTypeDescription
cipherSuites(<spring:bean/>)*
excludeCipherSuites(<spring:bean/>)*
serverjetty | server
sslContext<spring:bean/>
threadPool<spring:bean/>

Element: sslSocketConnector

AttributeTypeDescription
acceptQueueSizexs:integer
acceptorPriorityOffsetxs:integerSet the priority offset of the acceptor threads. The priority is adjusted by this amount (default 0) to either favour the acceptance of new threads and newly active connections or to favour the handling of already dispatched connections.
acceptorsxs:integer
confidentialPortxs:integer
confidentialSchemexs:string
forwardedxs:booleanIs reverse proxy handling on?
forwardedForHeaderxs:string
forwardedHostHeaderxs:string
forwardedServerHeaderxs:string
handshakeTimeoutxs:integerSet the time in milliseconds for so_timeout during ssl handshaking
headerBufferSizexs:integer
hostxs:string
hostHeaderxs:stringSet a forced valued for the host header to control what is returned by {@link ServletRequest#getServerName()} and {@link ServletRequest#getServerPort()}. This value is only used if {@link #isForwarded()} is true.
integralPortxs:integer
integralSchemexs:string
keyPasswordxs:string
keystorexs:string
keystoreTypexs:string
lowResourceMaxIdleTimexs:integer
maxIdleTimexs:integerSet the maximum Idle time for a connection, which roughly translates to the {@link Socket#setSoTimeout(int)} call, although with NIO implementations other mechanisms may be used to implement the timeout. The max idle time is applied:
  • When waiting for a new request to be received on a connection
  • When reading the headers and content of a request
  • When writing the headers and content of a response
Jetty interprets this value as the maximum time between some progress being made on the connection. So if a single byte is read or written, then the timeout (if implemented by jetty) is reset. However, in many instances, the reading/writing is delegated to the JVM, and the semantic is more strictly enforced as the maximum time a single read/write operation can take. Note, that as Jetty supports writes of memory mapped file buffers, then a write may take many 10s of seconds for large content written to a slow device.

Previously, Jetty supported separate idle timeouts and IO operation timeouts, however the expense of changing the value of soTimeout was significant, so these timeouts were merged. With the advent of NIO, it may be possible to again differentiate these values (if there is demand).

namexs:string
needClientAuthxs:booleanSet the value of the needClientAuth property
passwordxs:string
portxs:integer
protocolxs:string
providerxs:string
requestBufferSizexs:integer
resolveNamesxs:boolean
responseBufferSizexs:integer
reuseAddressxs:boolean
secureRandomAlgorithmxs:string
soLingerTimexs:integer
sslKeyManagerFactoryAlgorithmxs:string
sslTrustManagerFactoryAlgorithmxs:string
statsOnxs:boolean
trustPasswordxs:string
truststorexs:string
truststoreTypexs:string
wantClientAuthxs:booleanSet the value of the _wantClientAuth property. This property is used when {@link #newServerSocket(SocketAddress, int) opening server sockets}.
ElementTypeDescription
excludeCipherSuites(<spring:bean/>)*
serverjetty | server
sslContext<spring:bean/>
threadPool<spring:bean/>

Element: ssoJaasUserRealm

AttributeTypeDescription
callbackHandlerClassxs:string
loginModuleNamexs:stringSet the name to use to index into the config file of LoginModules.
namexs:stringGet the name of the realm.
ElementTypeDescription
SSORealmssoJaasUserRealmSet the SSORealm. A SSORealm implementation may be set to enable support for SSO.
roleCheckPolicystrictRoleCheckPolicy
roleClassNames(<spring:bean/>)*

Element: strictRoleCheckPolicy

Element: webAppContext

AttributeTypeDescription
aliasesxs:boolean
allowNullPathInfoxs:boolean
compactPathxs:boolean
contextPathxs:string
copyWebDirxs:boolean
defaultsDescriptorxs:stringThe default descriptor is a web.xml format file that is applied to the context before the standard WEB-INF/web.xml
descriptorxs:string
displayNamexs:string
distributablexs:boolean
extraClasspathxs:string
extractWARxs:boolean
logUrlOnStartxs:booleanSets whether or not the web app name and URL is logged on startup
maxFormContentSizexs:integer
overrideDescriptorxs:stringThe override descriptor is a web.xml format file that is applied to the context after the standard WEB-INF/web.xml
parentLoaderPriorityxs:boolean
resourceBasexs:string
shutdownxs:booleanSet shutdown status. This field allows for graceful shutdown of a context. A started context may be put into non accepting state so that existing requests can complete, but no new requests are accepted.
tempDirectoryxs:stringGet a temporary directory in which to unpack the war etc etc. The algorithm for determining this is to check these alternatives in the order shown:

A. Try to use an explicit directory specifically for this webapp:

  1. Iff an explicit directory is set for this webapp, use it. Do NOT set delete on exit.
  2. Iff javax.servlet.context.tempdir context attribute is set for this webapp && exists && writeable, then use it. Do NOT set delete on exit.

B. Create a directory based on global settings. The new directory will be called "Jetty_"+host+"_"+port+"__"+context+"_"+virtualhost Work out where to create this directory:

  1. Iff $(jetty.home)/work exists create the directory there. Do NOT set delete on exit. Do NOT delete contents if dir already exists.
  2. Iff WEB-INF/work exists create the directory there. Do NOT set delete on exit. Do NOT delete contents if dir already exists.
  3. Else create dir in $(java.io.tmpdir). Set delete on exit. Delete contents if dir already exists.
warxs:string
webAppxs:stringThe URL or filename of the webapp directory or war file.
ElementTypeDescription
attributescontextHandler | jetty | server | webAppContext
baseResource<spring:bean/>
classLoader<spring:bean/>
configurationClasses(<spring:bean/>)*
configurations(<spring:bean/>)*
connectorNames(<spring:bean/>)*Set the names of accepted connectors. Names are either "host:port" or a specific configured name for a connector.
errorHandler<spring:bean/>
eventListeners(<spring:bean/>)*
handlercontextHandler | contexts | defaultHandler | handlerCollection | jetty | requestLogHandler | resourceHandler | server | webAppContext
hosts(<spring:bean/>)*Get the hosts for the context.
initParams<spring:bean/>
logger<spring:bean/>
mimeTypes<spring:bean/>
parentcontextHandler | contexts | handlerCollection | jetty | requestLogHandler | server | webAppContextThe parent HandlerContainer.
permissions<spring:bean/>
resourceAliases<spring:bean/>
securityHandler<spring:bean/>
serverjetty | server
serverClasses(<spring:bean/>)*Set the server classes patterns.

Server classes/packages are classes used to implement the server and are hidden from the context. If the context needs to load these classes, it must have its own copy of them in WEB-INF/lib or WEB-INF/classes. A class pattern is a string of one of the forms:

org.package.Classname
Match a specific class
org.package.
Match a specific package hierarchy
-org.package.Classname
Exclude a specific class
-org.package.
Exclude a specific package hierarchy
servletHandler<spring:bean/>
sessionHandler<spring:bean/>
systemClasses(<spring:bean/>)*Set the system classes patterns.

System classes/packages are classes provided by the JVM and that cannot be replaced by classes of the same name from WEB-INF, regardless of the value of {@link #setParentLoaderPriority(boolean)}. A class pattern is a string of one of the forms:

org.package.Classname
Match a specific class
org.package.
Match a specific package hierarchy
-org.package.Classname
Exclude a specific class
-org.package.
Exclude a specific package hierarchy
virtualHosts(<spring:bean/>)*Get the virtual hosts for the context. Only requests that have a matching host header or fully qualified URL will be passed to that context with a virtual host name. A context with no virtual host names or a null virtual host name is available to all requests that are not served by a context with a matching virtual host name.
welcomeFiles(<spring:bean/>)*