Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Jetty/Reference/jetty-env.xml"
Line 1: | Line 1: | ||
{{Jetty Reference | {{Jetty Reference | ||
− | | introduction = <tt>jetty-env.xml</tt> is an optional Jetty configuration file | + | | introduction = <tt>jetty-env.xml</tt> is an optional Jetty configuration file that you can place in your webapp's WEB-INF directory to configure JNDI resources specifically for that webapp. The format of <tt>jetty-web.xml</tt> is the same as <tt>[[Jetty/Reference/jetty.xml|jetty.xml]]</tt> -- it is an XML mapping of the Jetty API. |
This document offers an overview for using the <tt>jetty-env.xml</tt> configuration file. For a more in-depth look at the syntax, see [[Jetty/Reference/jetty.xml Syntax|jetty.xml Syntax Reference]]. | This document offers an overview for using the <tt>jetty-env.xml</tt> configuration file. For a more in-depth look at the syntax, see [[Jetty/Reference/jetty.xml Syntax|jetty.xml Syntax Reference]]. | ||
| body = | | body = | ||
+ | At startup, Jetty will automatically look for a file of this name in the webapp's WEB-INF directory, and set up the webapp's naming environment so that naming references in the <tt>WEB-INF/web.xml</tt> file can be resolved from the information in the <tt>WEB-INF/jetty-env.xml</tt> file (along with any global naming resources defined in a <tt>jetty.xml</tt> startup file. | ||
== Root Element == | == Root Element == | ||
Line 26: | Line 27: | ||
<tt>jetty-env.xml</tt> files contain configuration specific to a webapp. Global naming resources should be defined on the server via <tt>jetty.xml</tt>. | <tt>jetty-env.xml</tt> files contain configuration specific to a webapp. Global naming resources should be defined on the server via <tt>jetty.xml</tt>. | ||
− | + | == Example == | |
− | == | + | |
− | + | ||
+ | <source lang="xml"> | ||
+ | <?xml version="1.0"?> | ||
+ | <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd"> | ||
+ | |||
+ | <Configure class="org.mortbay.jetty.webapp.WebAppContext"> | ||
+ | |||
+ | <!-- Add an EnvEntry only valid for this webapp --> | ||
+ | <New id="gargle" class="org.mortbay.jetty.plus.naming.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.mortbay.jetty.plus.naming.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.mortbay.jetty.plus.naming.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> | ||
+ | </source> | ||
| more = | | more = | ||
* [[Jetty/Reference/jetty.xml syntax|jetty.xml Syntax Reference]] - in-depth reference for Jetty-specific configuration XML syntax | * [[Jetty/Reference/jetty.xml syntax|jetty.xml Syntax Reference]] - in-depth reference for Jetty-specific configuration XML syntax |
Revision as of 23:44, 20 June 2010
Introduction
jetty-env.xml is an optional Jetty configuration file that you can place in your webapp's WEB-INF directory to configure JNDI resources specifically for that webapp. The format of jetty-web.xml is the same as jetty.xml -- it is an XML mapping of the Jetty API.
This document offers an overview for using the jetty-env.xml configuration file. For a more in-depth look at the syntax, see jetty.xml Syntax Reference.
At startup, Jetty will automatically look for a file of this name in the webapp's WEB-INF directory, and set up the webapp's naming environment so that naming references in the WEB-INF/web.xml file can be resolved from the information in the WEB-INF/jetty-env.xml file (along with any global naming resources defined in a jetty.xml startup file.
Root Element
jetty-env.xml is applied 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>
Using jetty-env.xml
Place the jetty-env.xml file into your web application's WEB-INF folder. 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/Reference/jetty.xml files.
jetty-env.xml files contain configuration specific to a webapp. Global naming resources should be defined on the server via jetty.xml.
Example
<?xml version="1.0"?> <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd"> <Configure class="org.mortbay.jetty.webapp.WebAppContext"> <!-- Add an EnvEntry only valid for this webapp --> <New id="gargle" class="org.mortbay.jetty.plus.naming.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.mortbay.jetty.plus.naming.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.mortbay.jetty.plus.naming.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>
Additional Resources
- jetty.xml Syntax Reference - in-depth reference for Jetty-specific configuration XML syntax
- jetty.xml - configuration file for configuring the entire server