<?xml version="1.0" encoding="UTF-8"?> | |
<!-- | |
Licensed to the Apache Software Foundation (ASF) under one or more | |
contributor license agreements. See the NOTICE file distributed with | |
this work for additional information regarding copyright ownership. | |
The ASF licenses this file to You under the Apache License, Version 2.0 | |
(the "License"); you may not use this file except in compliance with | |
the License. You may obtain a copy of the License at | |
http://www.apache.org/licenses/LICENSE-2.0 | |
Unless required by applicable law or agreed to in writing, software | |
distributed under the License is distributed on an "AS IS" BASIS, | |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
See the License for the specific language governing permissions and | |
limitations under the License. | |
--> | |
<!-- $Rev: 774466 $ $Date: 2009-05-13 11:18:23 -0700 (Wed, 13 May 2009) $ --> | |
<xs:schema | |
xmlns:web="http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1" | |
targetNamespace="http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1" | |
xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.2" | |
xmlns:app="http://geronimo.apache.org/xml/ns/j2ee/application-2.0" | |
xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.2" | |
xmlns:jaspi="http://geronimo.apache.org/xml/ns/geronimo-jaspi" | |
xmlns:ee="http://java.sun.com/xml/ns/persistence" | |
xmlns:xs="http://www.w3.org/2001/XMLSchema" | |
elementFormDefault="qualified" | |
attributeFormDefault="unqualified" | |
version="1.0"> | |
<xs:import namespace="http://geronimo.apache.org/xml/ns/naming-1.2" schemaLocation="geronimo-naming-1.2.xsd"/> | |
<xs:import namespace="http://geronimo.apache.org/xml/ns/j2ee/application-2.0" schemaLocation="geronimo-application-2.0.xsd"/> | |
<xs:import namespace="http://geronimo.apache.org/xml/ns/deployment-1.2" schemaLocation="geronimo-module-1.2.xsd"/> | |
<xs:import namespace="http://java.sun.com/xml/ns/persistence" schemaLocation="http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"/> | |
<xs:import namespace="http://geronimo.apache.org/xml/ns/geronimo-jaspi" schemaLocation="geronimo-jaspi.xsd"/> | |
<xs:element name="web-app" type="web:web-appType"/> | |
<xs:annotation> | |
<xs:documentation> | |
The web-app element is the root of the deployment descriptor for a Geronimo web | |
application. Note that the sub-elements of this element should be as in the given order because it is | |
defined as a sequence. | |
</xs:documentation> | |
</xs:annotation> | |
<xs:annotation> | |
<xs:documentation> | |
This group keeps the usage of the contained JNDI environment | |
reference elements consistent across J2EE deployment descriptors. | |
</xs:documentation> | |
</xs:annotation> | |
<xs:complexType name="web-appType"> | |
<xs:sequence> | |
<xs:element ref="sys:environment" minOccurs="0"> | |
<xs:annotation> | |
<xs:documentation> | |
This is the first part of the URL used to access the web application. | |
For example context-root of "Sample-App" will have URL of | |
http://host:port/Sample-App" and a context-root of "/" would be make this the default web application to the server. | |
If the web application is packaged as an EAR that can use application context | |
in the "application.xml". This element is necessary unless you want context root to default to the WAR | |
name. | |
</xs:documentation> | |
</xs:annotation> | |
</xs:element> | |
<xs:element name="context-root" type="xs:string" minOccurs="0"/> | |
<xs:element name="work-dir" type="xs:string" minOccurs="0"> | |
<xs:annotation> | |
<xs:documentation> | |
This is the work directory that will be used by this application. | |
For Jetty this will be relative to jetty home which is var/jetty | |
by default. | |
For Tomcat this will be relative to "catalina.home". | |
</xs:documentation> | |
</xs:annotation> | |
</xs:element> | |
<!--<xs:element name="context-priority-classloader" type="xs:boolean" minOccurs="0"/>--> | |
<xs:element ref="naming:web-container" minOccurs="0"/> | |
<xs:element name="container-config" type="web:container-configType" minOccurs="0"> | |
<xs:annotation> | |
<xs:documentation> | |
Geronimo supports both Jetty and Tomcat web containers. This element is | |
for a web application needs to take container specific settings. It can hold either a Tomcat element or a Jetty element or both. | |
</xs:documentation> | |
</xs:annotation> | |
</xs:element> | |
<xs:group ref="naming:jndiEnvironmentRefsGroup"/> | |
<xs:element ref="naming:message-destination" minOccurs="0" maxOccurs="unbounded"/> | |
<xs:sequence minOccurs="0"> | |
<xs:element name="security-realm-name" type="xs:string"/> | |
<xs:element name="authentication" type="web:authenticationType" minOccurs="0"> | |
<xs:annotation> | |
<xs:documentation> | |
The authentication element provides configuration for a specific | |
jaspi AuthConfigProvider, ServerAuthConfig, ServerAuthContext, or ServerAuthModule | |
to be used for authentication rather than a standard authentication method configured | |
in web.xml. | |
</xs:documentation> | |
</xs:annotation> | |
</xs:element> | |
<xs:element ref="app:security" minOccurs="0"/> | |
</xs:sequence> | |
<xs:choice minOccurs="0" maxOccurs="unbounded"> | |
<xs:element ref="sys:service" minOccurs="0" maxOccurs="unbounded"> | |
<xs:annotation> | |
<xs:documentation> | |
Reference to abstract service element defined in imported | |
"geronimo-module-1.2.xsd" | |
</xs:documentation> | |
</xs:annotation> | |
</xs:element> | |
<xs:element ref="ee:persistence"/> | |
</xs:choice> | |
</xs:sequence> | |
</xs:complexType> | |
<xs:complexType name="authenticationType"> | |
<xs:choice minOccurs="0"> | |
<xs:element ref="jaspi:configProvider"/> | |
<xs:element ref="jaspi:serverAuthConfig"/> | |
<xs:element ref="jaspi:serverAuthContext"/> | |
<xs:element ref="jaspi:serverAuthModule"/> | |
</xs:choice> | |
</xs:complexType> | |
<xs:complexType name="container-configType"> | |
<xs:sequence> | |
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> | |
</xs:sequence> | |
</xs:complexType> | |
</xs:schema> |