jetty-env.xml
is an optional Jetty file that configures JNDI resources for an individual
webapp. The format of jetty-env.xml
is the same as
jetty.xml
–it
is an XML mapping of the Jetty API.
When Jetty deploys a web application, it automatically looks for a file called
WEB-INF/jetty-env.xml
within the web application (or WAR), and sets up the webapp naming environment so
that naming references in the WEB-INF/web.xml
file can be resolved from the information provided
in the WEB-INF/jetty-env.xml
and
jetty.xml
files. You define global
naming resources on the server via jetty.xml
.
Jetty applies jetty-env.xml
on a per-webapp basis, and configures an instance of
org.eclipse.jetty.webapp.WebAppContext.
<?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://www.eclipse.org/jetty/configure.dtd"> <Configure class="org.eclipse.jetty.webapp.WebAppContext"> .. </Configure>
jetty-env.xml
configures an instance of WebAppContext, and not an instance of Server.Place the jetty-env.xml
file in your web application's WEB-INF folder.
<?xml version="1.0"?> <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd"> <Configure class="org.eclipse.jetty.webapp.WebAppContext"> <!-- Add an EnvEntry only valid for this webapp --> <New id="gargle" class="org.eclipse.jetty.plus.jndi.EnvEntry"> <Arg>gargle</Arg> <Arg type="java.lang.Double">100</Arg> <Arg type="boolean">true</Arg> </New> <!-- Add an override for a global EnvEntry --> <New id="wiggle" class="org.eclipse.jetty.plus.jndi.EnvEntry"> <Arg>wiggle</Arg> <Arg type="java.lang.Double">55.0</Arg> <Arg type="boolean">true</Arg> </New> <!-- an XADataSource --> <New id="mydatasource99" class="org.eclipse.jetty.plus.jndi.Resource"> <Arg>jdbc/mydatasource99</Arg> <Arg> <New class="com.atomikos.jdbc.SimpleDataSourceBean"> <Set name="xaDataSourceClassName">org.apache.derby.jdbc.EmbeddedXADataSource</Set> <Set name="xaDataSourceProperties">databaseName=testdb99;createDatabase=create</Set> <Set name="UniqueResourceName">mydatasource99</Set> </New> </Arg> </New> </Configure>