blob: cc5f938661883cefec5e78a3c8a917a30895a3a7 [file] [log] [blame]
<?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.
-->
<!-- @version $Rev: 661037 $ $Date: 2008-05-28 11:19:08 -0700 (Wed, 28 May 2008) $ -->
<xs:schema
xmlns:geronimo="http://geronimo.apache.org/xml/ns/j2ee/application-client-2.0"
targetNamespace="http://geronimo.apache.org/xml/ns/j2ee/application-client-2.0"
xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.2"
xmlns:connector="http://geronimo.apache.org/xml/ns/j2ee/connector-1.2"
xmlns:security="http://geronimo.apache.org/xml/ns/security-2.0"
xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.2"
xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
attributeFormDefault="unqualified" version="1.0">
<xs:annotation>
<xs:documentation>
This is an XML Schema Definition for Geronimo Java application
client deployment plan. In case the Java application client
deployment plan is provided internally in the java archive, it
should be named META-INF/geronimo-application-client.xml. In case
the java application client deployment plan is provided externally,
the deployment descriptor can be named anything and provided to the
deploy tool. All the Java application client deployment plan must
specify the top level element as application-client with namespace
specified as
xmlns="http://geronimo.apache.org/xml/ns/j2ee/application-client-2.0".
The default location for this document is
http://geronimo.apache.org/xml/ns/j2ee/application-client-2.0
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://geronimo.apache.org/xml/ns/naming-1.2"
schemaLocation="geronimo-naming-1.2.xsd">
<xs:annotation>
<xs:documentation>
Import partial schema containing common naming elements, the
imported plan declares elements like ejb-ref, ejb-local-ref,
service-ref, resource-ref, and resource-env-ref required by this
plan schema.
</xs:documentation>
</xs:annotation>
</xs:import>
<xs:import namespace="http://geronimo.apache.org/xml/ns/security-2.0"
schemaLocation="geronimo-security-2.0.xsd">
<xs:annotation>
<xs:documentation>
Import Geronimo security deployment plans. The imported plan
includes complex types for defining security and principals.
</xs:documentation>
</xs:annotation>
</xs:import>
<xs:import namespace="http://geronimo.apache.org/xml/ns/j2ee/connector-1.2"
schemaLocation="geronimo-connector-1.2.xsd">
<xs:annotation>
<xs:documentation>
Import Geronimo resource adapter deployment plans. The imported
plan includes complex types for defining connectors and resource
adapters.
</xs:documentation>
</xs:annotation>
</xs:import>
<xs:import namespace="http://geronimo.apache.org/xml/ns/deployment-1.2"
schemaLocation="geronimo-module-1.2.xsd">
<xs:annotation>
<xs:documentation>
Import Geronimo Services deployment plans. The imported plan
includes complex types like moduleType, environmentType,
dependenciesType, etc. required by this plan schema.
</xs:documentation>
</xs:annotation>
</xs:import>
<xs:element name="application-client"
type="geronimo:application-clientType">
<xs:annotation>
<xs:documentation>
The root element for Geronimo Java application client deployment
plan, this element should always exist in instance documents. It
mirrors the application-client defined by
application-client_1_4.xsd. It specifies the references for the
java application client modules. These references could be
reference to external gbeans, ejb modules, service modules,
resources, or security principals.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="application-clientType">
<xs:sequence>
<xs:element ref="sys:client-environment">
<xs:annotation>
<xs:documentation>
Reference to client-environment element defined in
imported "geronimo-module-1.2.xsd"
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="sys:server-environment">
<xs:annotation>
<xs:documentation>
Reference to server-environment element defined in
imported "geronimo-module-1.2.xsd"
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="naming:gbean-ref" minOccurs="0"
maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>
Reference to gbean-ref element defined in imported
"geronimo-naming-1.2.xsd"
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="naming:ejb-ref" minOccurs="0"
maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>
Reference to ejb-ref element defined in imported
"geronimo-naming-1.2.xsd"
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="naming:service-ref" minOccurs="0"
maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>
Reference to service-ref element defined in imported
"geronimo-naming-1.2.xsd"
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="naming:resource-ref" minOccurs="0"
maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>
Reference to resource-ref element defined in imported
"geronimo-naming-1.2.xsd"
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="naming:resource-env-ref" minOccurs="0"
maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>
Reference to resource-env-ref element defined in
imported "geronimo-naming-1.2.xsd"
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="naming:message-destination" minOccurs="0"
maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>
Reference to message-destination element defined in
imported "geronimo-naming-1.2.xsd"
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="security:default-subject" minOccurs="0">
<xs:annotation>
<xs:documentation>
Reference to default-subject element defined in
imported "geronimo-security-2.0.xsd"
This is the subject run under if you are not logged in.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:sequence minOccurs="0">
<xs:element name="realm-name" type="xs:string">
<xs:annotation>
<xs:documentation>
The realm-name element names the security realm used
for JAAS login
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="callback-handler" type="xs:string"
minOccurs="0">
<xs:annotation>
<xs:documentation>
The callback-handler element specifies the name of a
callback class provided by the application for JAAS
authentication. This class must implement the
javax.security.auth.callback.CallbackHandler
interface and follow its specification, as this
class will be used by the application client
container to collect authentication information from
the user.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:element name="resource" type="geronimo:resourceType"
minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>
The resource element names contains the definition of
all the module-scoped connector resources. The connector
resource can be both external and internal to the
application client.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="sys:service" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>
Reference to service element defined in imported
"geronimo-module-1.2.xsd"
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="resourceType">
<xs:sequence>
<xs:choice>
<xs:element name="external-rar" type="sys:patternType">
<xs:annotation>
<xs:documentation>
The external-rar is a Module ID of the resource
adapter in the Geronimo repository.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="internal-rar" type="xs:string">
<xs:annotation>
<xs:documentation>
The internal-rar is a Module ID of the resource
adapter in the client module.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element ref="connector:connector">
<xs:annotation>
<xs:documentation>
This element contains the contents of the Resource Group
deployment plan. The content is no different that the
content of the deployment plan would have been for the
server-wide or application-scoped resource group.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:schema>