2208 lines
67 KiB
XML
2208 lines
67 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
|
|
targetNamespace="http://java.sun.com/xml/ns/j2ee"
|
|
xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
elementFormDefault="qualified"
|
|
attributeFormDefault="unqualified"
|
|
version="2.1">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
@(#)ejb-jar_2_1.xsds 1.23 08/01/03
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
Copyright 2003 Sun Microsystems, Inc., 901 San Antonio
|
|
Road, Palo Alto, California 94303, U.S.A. All rights
|
|
reserved.
|
|
|
|
Sun Microsystems, Inc. has intellectual property rights
|
|
relating to technology described in this document. In
|
|
particular, and without limitation, these intellectual
|
|
property rights may include one or more of the U.S. patents
|
|
listed at http://www.sun.com/patents and one or more
|
|
additional patents or pending patent applications in the
|
|
U.S. and other countries.
|
|
|
|
This document and the technology which it describes are
|
|
distributed under licenses restricting their use, copying,
|
|
distribution, and decompilation. No part of this document
|
|
may be reproduced in any form by any means without prior
|
|
written authorization of Sun and its licensors, if any.
|
|
|
|
Third-party software, including font technology, is
|
|
copyrighted and licensed from Sun suppliers.
|
|
|
|
Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
|
|
JavaServer Pages, Enterprise JavaBeans and the Java Coffee
|
|
Cup logo are trademarks or registered trademarks of Sun
|
|
Microsystems, Inc. in the U.S. and other countries.
|
|
|
|
Federal Acquisitions: Commercial Software - Government Users
|
|
Subject to Standard License Terms and Conditions.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
<![CDATA[
|
|
|
|
This is the XML Schema for the EJB 2.1 deployment descriptor.
|
|
The deployment descriptor must be named "META-INF/ejb-jar.xml" in
|
|
the EJB's jar file. All EJB deployment descriptors must indicate
|
|
the ejb-jar schema by using the J2EE namespace:
|
|
|
|
http://java.sun.com/xml/ns/j2ee
|
|
|
|
and by indicating the version of the schema by
|
|
using the version element as shown below:
|
|
|
|
<ejb-jar xmlns="http://java.sun.com/xml/ns/j2ee"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
|
|
http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd"
|
|
version="2.1">
|
|
...
|
|
</ejb-jar>
|
|
|
|
The instance documents may indicate the published version of
|
|
the schema using the xsi:schemaLocation attribute for the
|
|
J2EE namespace with the following location:
|
|
|
|
http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd
|
|
|
|
]]>
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The following conventions apply to all J2EE
|
|
deployment descriptor elements unless indicated otherwise.
|
|
|
|
- In elements that specify a pathname to a file within the
|
|
same JAR file, relative filenames (i.e., those not
|
|
starting with "/") are considered relative to the root of
|
|
the JAR file's namespace. Absolute filenames (i.e., those
|
|
starting with "/") also specify names in the root of the
|
|
JAR file's namespace. In general, relative names are
|
|
preferred. The exception is .war files where absolute
|
|
names are preferred for consistency with the Servlet API.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:include schemaLocation="j2ee_1_4.xsd"/>
|
|
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
|
|
<xsd:element name="ejb-jar" type="j2ee:ejb-jarType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
This is the root of the ejb-jar deployment descriptor.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:key name="ejb-name-key">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The ejb-name element contains the name of an enterprise
|
|
bean. The name must be unique within the ejb-jar file.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:enterprise-beans/*"/>
|
|
<xsd:field xpath="j2ee:ejb-name"/>
|
|
</xsd:key>
|
|
|
|
<xsd:keyref name="ejb-name-references"
|
|
refer="j2ee:ejb-name-key">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The keyref indicates the references from
|
|
relationship-role-source must be to a specific ejb-name
|
|
defined within the scope of enterprise-beans element.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector
|
|
xpath=".//j2ee:ejb-relationship-role/j2ee:relationship-role-source"/>
|
|
<xsd:field
|
|
xpath="j2ee:ejb-name"/>
|
|
</xsd:keyref>
|
|
|
|
<xsd:key name="role-name-key">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
A role-name-key is specified to allow the references
|
|
from the security-role-refs.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:assembly-descriptor/j2ee:security-role"/>
|
|
<xsd:field xpath="j2ee:role-name"/>
|
|
</xsd:key>
|
|
|
|
<xsd:keyref name="role-name-references"
|
|
refer="j2ee:role-name-key">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The keyref indicates the references from
|
|
security-role-ref to a specified role-name.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:enterprise-beans/*/j2ee:security-role-ref"/>
|
|
<xsd:field xpath="j2ee:role-link"/>
|
|
</xsd:keyref>
|
|
</xsd:element>
|
|
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="activation-config-propertyType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The activation-config-propertyType contains a name/value
|
|
configuration property pair for a message-driven bean.
|
|
|
|
The properties that are recognized for a particular
|
|
message-driven bean are determined by the messaging type.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="activation-config-property-name"
|
|
type="j2ee:xsdStringType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The activation-config-property-name element contains
|
|
the name for an activation configuration property of
|
|
a message-driven bean.
|
|
|
|
For JMS message-driven beans, the following property
|
|
names are recognized: acknowledgeMode,
|
|
messageSelector, destinationType, subscriptionDurability
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="activation-config-property-value"
|
|
type="j2ee:xsdStringType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The activation-config-property-value element
|
|
contains the value for an activation configuration
|
|
property of a message-driven bean.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="activation-configType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The activation-configType defines information about the
|
|
expected configuration properties of the message-driven bean
|
|
in its operational environment. This may include information
|
|
about message acknowledgement, message selector, expected
|
|
destination type, etc.
|
|
|
|
The configuration information is expressed in terms of
|
|
name/value configuration properties.
|
|
|
|
The properties that are recognized for a particular
|
|
message-driven bean are determined by the messaging type.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="description"
|
|
type="j2ee:descriptionType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="activation-config-property"
|
|
type="j2ee:activation-config-propertyType"
|
|
maxOccurs="unbounded"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="assembly-descriptorType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The assembly-descriptorType defines
|
|
application-assembly information.
|
|
|
|
The application-assembly information consists of the
|
|
following parts: the definition of security roles, the
|
|
definition of method permissions, the definition of
|
|
transaction attributes for enterprise beans with
|
|
container-managed transaction demarcation and a list of
|
|
methods to be excluded from being invoked.
|
|
|
|
All the parts are optional in the sense that they are
|
|
omitted if the lists represented by them are empty.
|
|
|
|
Providing an assembly-descriptor in the deployment
|
|
descriptor is optional for the ejb-jar file producer.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="security-role"
|
|
type="j2ee:security-roleType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="method-permission"
|
|
type="j2ee:method-permissionType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="container-transaction"
|
|
type="j2ee:container-transactionType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="message-destination"
|
|
type="j2ee:message-destinationType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="exclude-list"
|
|
type="j2ee:exclude-listType"
|
|
minOccurs="0"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="cmp-fieldType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The cmp-fieldType describes a container-managed field. The
|
|
cmp-fieldType contains an optional description of the field,
|
|
and the name of the field.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:sequence>
|
|
<xsd:element name="description"
|
|
type="j2ee:descriptionType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="field-name"
|
|
type="j2ee:java-identifierType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The field-name element specifies the name of a
|
|
container managed field.
|
|
|
|
The name of the cmp-field of an entity bean with
|
|
cmp-version 2.x must begin with a lowercase
|
|
letter. This field is accessed by methods whose
|
|
names consists of the name of the field specified by
|
|
field-name in which the first letter is uppercased,
|
|
prefixed by "get" or "set".
|
|
|
|
The name of the cmp-field of an entity bean with
|
|
cmp-version 1.x must denote a public field of the
|
|
enterprise bean class or one of its superclasses.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="cmp-versionType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The cmp-versionType specifies the version of an entity bean
|
|
with container-managed persistence. It is used by
|
|
cmp-version elements.
|
|
|
|
The value must be one of the two following:
|
|
|
|
1.x
|
|
2.x
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleContent>
|
|
<xsd:restriction base="j2ee:string">
|
|
<xsd:enumeration value="1.x"/>
|
|
<xsd:enumeration value="2.x"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="cmr-field-typeType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The cmr-field-type element specifies the class of a
|
|
collection-valued logical relationship field in the entity
|
|
bean class. The value of an element using cmr-field-typeType
|
|
must be either: java.util.Collection or java.util.Set.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleContent>
|
|
<xsd:restriction base="j2ee:string">
|
|
<xsd:enumeration value="java.util.Collection"/>
|
|
<xsd:enumeration value="java.util.Set"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="cmr-fieldType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The cmr-fieldType describes the bean provider's view of
|
|
a relationship. It consists of an optional description, and
|
|
the name and the class type of a field in the source of a
|
|
role of a relationship. The cmr-field-name element
|
|
corresponds to the name used for the get and set accessor
|
|
methods for the relationship. The cmr-field-type element is
|
|
used only for collection-valued cmr-fields. It specifies the
|
|
type of the collection that is used.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="description"
|
|
type="j2ee:descriptionType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="cmr-field-name"
|
|
type="j2ee:string">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The cmr-field-name element specifies the name of a
|
|
logical relationship field in the entity bean
|
|
class. The name of the cmr-field must begin with a
|
|
lowercase letter. This field is accessed by methods
|
|
whose names consist of the name of the field
|
|
specified by cmr-field-name in which the first
|
|
letter is uppercased, prefixed by "get" or "set".
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="cmr-field-type"
|
|
type="j2ee:cmr-field-typeType"
|
|
minOccurs="0"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="container-transactionType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The container-transactionType specifies how the container
|
|
must manage transaction scopes for the enterprise bean's
|
|
method invocations. It defines an optional description, a
|
|
list of method elements, and a transaction attribute. The
|
|
transaction attribute is to be applied to all the specified
|
|
methods.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="description"
|
|
type="j2ee:descriptionType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="method"
|
|
type="j2ee:methodType"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="trans-attribute"
|
|
type="j2ee:trans-attributeType"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="ejb-classType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
<![CDATA[
|
|
|
|
The ejb-classType contains the fully-qualified name of the
|
|
enterprise bean's class. It is used by ejb-class elements.
|
|
|
|
Example:
|
|
|
|
<ejb-class>com.wombat.empl.EmployeeServiceBean</ejb-class>
|
|
|
|
]]>
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleContent>
|
|
<xsd:restriction base="j2ee:fully-qualified-classType"/>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="ejb-jarType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The ejb-jarType defines the root element of the EJB
|
|
deployment descriptor. It contains
|
|
|
|
- an optional description of the ejb-jar file
|
|
- an optional display name
|
|
- an optional icon that contains a small and a large
|
|
icon file name
|
|
- mandatory structural information about all included
|
|
enterprise beans
|
|
- a descriptor for container managed relationships,
|
|
if any
|
|
- an optional application-assembly descriptor
|
|
- an optional name of an ejb-client-jar file for the
|
|
ejb-jar.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:group ref="j2ee:descriptionGroup"/>
|
|
<xsd:element name="enterprise-beans"
|
|
type="j2ee:enterprise-beansType"/>
|
|
<xsd:element name="relationships"
|
|
type="j2ee:relationshipsType"
|
|
minOccurs="0">
|
|
<xsd:unique name="relationship-name-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The ejb-relation-name contains the name of a
|
|
relation. The name must be unique within
|
|
relationships.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:ejb-relation"/>
|
|
<xsd:field xpath="j2ee:ejb-relation-name"/>
|
|
</xsd:unique>
|
|
</xsd:element>
|
|
<xsd:element name="assembly-descriptor"
|
|
type="j2ee:assembly-descriptorType"
|
|
minOccurs="0">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
Providing an assembly-descriptor in the deployment
|
|
descriptor is optional for the ejb-jar file
|
|
producer.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="ejb-client-jar"
|
|
type="j2ee:pathType"
|
|
minOccurs="0">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
<![CDATA[
|
|
|
|
The optional ejb-client-jar element specifies a JAR
|
|
file that contains the class files necessary for a
|
|
client program to access the
|
|
enterprise beans in the ejb-jar file.
|
|
|
|
Example:
|
|
|
|
<ejb-client-jar>employee_service_client.jar
|
|
</ejb-client-jar>
|
|
|
|
]]>
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="version"
|
|
type="j2ee:dewey-versionType"
|
|
fixed="2.1"
|
|
use="required">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The version specifies the version of the
|
|
EJB specification that the instance document must
|
|
comply with. This information enables deployment tools
|
|
to validate a particular EJB Deployment
|
|
Descriptor with respect to a specific version of the EJB
|
|
schema.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:attribute>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="ejb-nameType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
<![CDATA[
|
|
|
|
The ejb-nameType specifies an enterprise bean's name. It is
|
|
used by ejb-name elements. This name is assigned by the
|
|
ejb-jar file producer to name the enterprise bean in the
|
|
ejb-jar file's deployment descriptor. The name must be
|
|
unique among the names of the enterprise beans in the same
|
|
ejb-jar file.
|
|
|
|
There is no architected relationship between the used
|
|
ejb-name in the deployment descriptor and the JNDI name that
|
|
the Deployer will assign to the enterprise bean's home.
|
|
|
|
The name for an entity bean must conform to the lexical
|
|
rules for an NMTOKEN.
|
|
|
|
Example:
|
|
|
|
<ejb-name>EmployeeService</ejb-name>
|
|
|
|
]]>
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleContent>
|
|
<xsd:restriction base="j2ee:xsdNMTOKENType"/>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="ejb-relationType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The ejb-relationType describes a relationship between two
|
|
entity beans with container-managed persistence. It is used
|
|
by ejb-relation elements. It contains a description; an
|
|
optional ejb-relation-name element; and exactly two
|
|
relationship role declarations, defined by the
|
|
ejb-relationship-role elements. The name of the
|
|
relationship, if specified, is unique within the ejb-jar
|
|
file.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="description"
|
|
type="j2ee:descriptionType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="ejb-relation-name"
|
|
type="j2ee:string"
|
|
minOccurs="0">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The ejb-relation-name element provides a unique name
|
|
within the ejb-jar file for a relationship.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="ejb-relationship-role"
|
|
type="j2ee:ejb-relationship-roleType"/>
|
|
<xsd:element name="ejb-relationship-role"
|
|
type="j2ee:ejb-relationship-roleType"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="ejb-relationship-roleType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
<![CDATA[
|
|
|
|
The ejb-relationship-roleType describes a role within a
|
|
relationship. There are two roles in each relationship.
|
|
|
|
The ejb-relationship-roleType contains an optional
|
|
description; an optional name for the relationship role; a
|
|
specification of the multiplicity of the role; an optional
|
|
specification of cascade-delete functionality for the role;
|
|
the role source; and a declaration of the cmr-field, if any,
|
|
by means of which the other side of the relationship is
|
|
accessed from the perspective of the role source.
|
|
|
|
The multiplicity and role-source element are mandatory.
|
|
|
|
The relationship-role-source element designates an entity
|
|
bean by means of an ejb-name element. For bidirectional
|
|
relationships, both roles of a relationship must declare a
|
|
relationship-role-source element that specifies a cmr-field
|
|
in terms of which the relationship is accessed. The lack of
|
|
a cmr-field element in an ejb-relationship-role specifies
|
|
that the relationship is unidirectional in navigability and
|
|
the entity bean that participates in the relationship is
|
|
"not aware" of the relationship.
|
|
|
|
Example:
|
|
|
|
<ejb-relation>
|
|
<ejb-relation-name>Product-LineItem</ejb-relation-name>
|
|
<ejb-relationship-role>
|
|
<ejb-relationship-role-name>product-has-lineitems
|
|
</ejb-relationship-role-name>
|
|
<multiplicity>One</multiplicity>
|
|
<relationship-role-source>
|
|
<ejb-name>ProductEJB</ejb-name>
|
|
</relationship-role-source>
|
|
</ejb-relationship-role>
|
|
</ejb-relation>
|
|
|
|
]]>
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="description"
|
|
type="j2ee:descriptionType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="ejb-relationship-role-name"
|
|
type="j2ee:string"
|
|
minOccurs="0">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The ejb-relationship-role-name element defines a
|
|
name for a role that is unique within an
|
|
ejb-relation. Different relationships can use the
|
|
same name for a role.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="multiplicity"
|
|
type="j2ee:multiplicityType"/>
|
|
<xsd:element name="cascade-delete"
|
|
type="j2ee:emptyType"
|
|
minOccurs="0">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The cascade-delete element specifies that, within a
|
|
particular relationship, the lifetime of one or more
|
|
entity beans is dependent upon the lifetime of
|
|
another entity bean. The cascade-delete element can
|
|
only be specified for an ejb-relationship-role
|
|
element contained in an ejb-relation element in
|
|
which the other ejb-relationship-role
|
|
element specifies a multiplicity of One.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="relationship-role-source"
|
|
type="j2ee:relationship-role-sourceType"/>
|
|
<xsd:element name="cmr-field"
|
|
type="j2ee:cmr-fieldType"
|
|
minOccurs="0"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="enterprise-beansType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The enterprise-beansType declares one or more enterprise
|
|
beans. Each bean can be a session, entity or message-driven
|
|
bean.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:choice maxOccurs="unbounded">
|
|
<xsd:element name="session"
|
|
type="j2ee:session-beanType">
|
|
<xsd:unique name="session-ejb-local-ref-name-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The ejb-ref-name element contains the name of
|
|
an EJB reference. The EJB reference is an entry in
|
|
the component's environment and is relative to the
|
|
java:comp/env context. The name must be unique within
|
|
the component.
|
|
|
|
It is recommended that name be prefixed with "ejb/".
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:ejb-local-ref"/>
|
|
<xsd:field xpath="j2ee:ejb-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="session-ejb-ref-name-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The ejb-ref-name element contains the name of an EJB
|
|
reference. The EJB reference is an entry in the
|
|
component's environment and is relative to the
|
|
java:comp/env context. The name must be unique
|
|
within the component.
|
|
|
|
It is recommended that name is prefixed with "ejb/".
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:ejb-ref"/>
|
|
<xsd:field xpath="j2ee:ejb-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="session-resource-env-ref-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The resource-env-ref-name element specifies the name
|
|
of a resource environment reference; its value is
|
|
the environment entry name used in the component
|
|
code. The name is a JNDI name relative to the
|
|
java:comp/env context and must be unique within an
|
|
component.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:resource-env-ref"/>
|
|
<xsd:field xpath="j2ee:resource-env-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="session-message-destination-ref-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The message-destination-ref-name element specifies the name
|
|
of a message destination reference; its value is
|
|
the message destination reference name used in the component
|
|
code. The name is a JNDI name relative to the
|
|
java:comp/env context and must be unique within an
|
|
component.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:message-destination-ref"/>
|
|
<xsd:field xpath="j2ee:message-destination-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="session-res-ref-name-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The res-ref-name element specifies the name of a
|
|
resource manager connection factory reference. The name
|
|
is a JNDI name relative to the java:comp/env context.
|
|
The name must be unique within an component.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:resource-ref"/>
|
|
<xsd:field xpath="j2ee:res-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="session-env-entry-name-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The env-entry-name element contains the name of a
|
|
component's environment entry. The name is a JNDI
|
|
name relative to the java:comp/env context. The
|
|
name must be unique within an component.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:env-entry"/>
|
|
<xsd:field xpath="j2ee:env-entry-name"/>
|
|
</xsd:unique>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="entity"
|
|
type="j2ee:entity-beanType">
|
|
<xsd:unique name="entity-ejb-local-ref-name-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The ejb-ref-name element contains the name of
|
|
an EJB reference. The EJB reference is an entry in
|
|
the component's environment and is relative to the
|
|
java:comp/env context. The name must be unique within
|
|
the component.
|
|
|
|
It is recommended that name be prefixed with "ejb/".
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:ejb-local-ref"/>
|
|
<xsd:field xpath="j2ee:ejb-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="entity-ejb-ref-name-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The ejb-ref-name element contains the name of an EJB
|
|
reference. The EJB reference is an entry in the
|
|
component's environment and is relative to the
|
|
java:comp/env context. The name must be unique
|
|
within the component.
|
|
|
|
It is recommended that name is prefixed with "ejb/".
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:ejb-ref"/>
|
|
<xsd:field xpath="j2ee:ejb-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="entity-resource-env-ref-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The resource-env-ref-name element specifies the name
|
|
of a resource environment reference; its value is
|
|
the environment entry name used in the component
|
|
code. The name is a JNDI name relative to the
|
|
java:comp/env context and must be unique within an
|
|
component.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:resource-env-ref"/>
|
|
<xsd:field xpath="j2ee:resource-env-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="entity-message-destination-ref-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The message-destination-ref-name element specifies the name
|
|
of a message destination reference; its value is
|
|
the message destination reference name used in the component
|
|
code. The name is a JNDI name relative to the
|
|
java:comp/env context and must be unique within an
|
|
component.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:message-destination-ref"/>
|
|
<xsd:field xpath="j2ee:message-destination-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="entity-res-ref-name-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The res-ref-name element specifies the name of a
|
|
resource manager connection factory reference. The name
|
|
is a JNDI name relative to the java:comp/env context.
|
|
The name must be unique within an component.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:resource-ref"/>
|
|
<xsd:field xpath="j2ee:res-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="entity-env-entry-name-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The env-entry-name element contains the name of a
|
|
component's environment entry. The name is a JNDI
|
|
name relative to the java:comp/env context. The
|
|
name must be unique within an component.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:env-entry"/>
|
|
<xsd:field xpath="j2ee:env-entry-name"/>
|
|
</xsd:unique>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="message-driven"
|
|
type="j2ee:message-driven-beanType">
|
|
<xsd:unique name="messaged-ejb-local-ref-name-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The ejb-ref-name element contains the name of
|
|
an EJB reference. The EJB reference is an entry in
|
|
the component's environment and is relative to the
|
|
java:comp/env context. The name must be unique within
|
|
the component.
|
|
|
|
It is recommended that name be prefixed with "ejb/".
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:ejb-local-ref"/>
|
|
<xsd:field xpath="j2ee:ejb-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="messaged-ejb-ref-name-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The ejb-ref-name element contains the name of an EJB
|
|
reference. The EJB reference is an entry in the
|
|
component's environment and is relative to the
|
|
java:comp/env context. The name must be unique
|
|
within the component.
|
|
|
|
It is recommended that name is prefixed with "ejb/".
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:ejb-ref"/>
|
|
<xsd:field xpath="j2ee:ejb-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="messaged-resource-env-ref-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The resource-env-ref-name element specifies the name
|
|
of a resource environment reference; its value is
|
|
the environment entry name used in the component
|
|
code. The name is a JNDI name relative to the
|
|
java:comp/env context and must be unique within an
|
|
component.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:resource-env-ref"/>
|
|
<xsd:field xpath="j2ee:resource-env-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="messaged-message-destination-ref-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The message-destination-ref-name element specifies the name
|
|
of a message destination reference; its value is
|
|
the message destination reference name used in the component
|
|
code. The name is a JNDI name relative to the
|
|
java:comp/env context and must be unique within an
|
|
component.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:message-destination-ref"/>
|
|
<xsd:field xpath="j2ee:message-destination-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="messaged-res-ref-name-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The res-ref-name element specifies the name of a
|
|
resource manager connection factory reference. The name
|
|
is a JNDI name relative to the java:comp/env context.
|
|
The name must be unique within an component.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:resource-ref"/>
|
|
<xsd:field xpath="j2ee:res-ref-name"/>
|
|
</xsd:unique>
|
|
|
|
<xsd:unique name="messaged-env-entry-name-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The env-entry-name element contains the name of a
|
|
component's environment entry. The name is a JNDI
|
|
name relative to the java:comp/env context. The
|
|
name must be unique within an component.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="j2ee:env-entry"/>
|
|
<xsd:field xpath="j2ee:env-entry-name"/>
|
|
</xsd:unique>
|
|
</xsd:element>
|
|
|
|
</xsd:choice>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="entity-beanType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The entity-beanType declares an entity bean. The declaration
|
|
consists of:
|
|
|
|
- an optional description
|
|
- an optional display name
|
|
- an optional icon element that contains a small and a large
|
|
icon file name
|
|
- a unique name assigned to the enterprise bean
|
|
in the deployment descriptor
|
|
- the names of the entity bean's remote home
|
|
and remote interfaces, if any
|
|
- the names of the entity bean's local home and local
|
|
interfaces, if any
|
|
- the entity bean's implementation class
|
|
- the entity bean's persistence management type
|
|
- the entity bean's primary key class name
|
|
- an indication of the entity bean's reentrancy
|
|
- an optional specification of the
|
|
entity bean's cmp-version
|
|
- an optional specification of the entity bean's
|
|
abstract schema name
|
|
- an optional list of container-managed fields
|
|
- an optional specification of the primary key
|
|
field
|
|
- an optional declaration of the bean's environment
|
|
entries
|
|
- an optional declaration of the bean's EJB
|
|
references
|
|
- an optional declaration of the bean's local
|
|
EJB references
|
|
- an optional declaration of the bean's web
|
|
service references
|
|
- an optional declaration of the security role
|
|
references
|
|
- an optional declaration of the security identity
|
|
to be used for the execution of the bean's methods
|
|
- an optional declaration of the bean's
|
|
resource manager connection factory references
|
|
- an optional declaration of the bean's
|
|
resource environment references
|
|
- an optional declaration of the bean's message
|
|
destination references
|
|
- an optional set of query declarations
|
|
for finder and select methods for an entity
|
|
bean with cmp-version 2.x.
|
|
|
|
The optional abstract-schema-name element must be specified
|
|
for an entity bean with container-managed persistence and
|
|
cmp-version 2.x.
|
|
|
|
The optional primkey-field may be present in the descriptor
|
|
if the entity's persistence-type is Container.
|
|
|
|
The optional cmp-version element may be present in the
|
|
descriptor if the entity's persistence-type is Container. If
|
|
the persistence-type is Container and the cmp-version
|
|
element is not specified, its value defaults to 2.x.
|
|
|
|
The optional home and remote elements must be specified if
|
|
the entity bean cmp-version is 1.x.
|
|
|
|
The optional home and remote elements must be specified if
|
|
the entity bean has a remote home and remote interface.
|
|
|
|
The optional local-home and local elements must be specified
|
|
if the entity bean has a local home and local interface.
|
|
|
|
Either both the local-home and the local elements or both
|
|
the home and the remote elements must be specified.
|
|
|
|
The optional query elements must be present if the
|
|
persistence-type is Container and the cmp-version is 2.x and
|
|
query methods other than findByPrimaryKey have been defined
|
|
for the entity bean.
|
|
|
|
The other elements that are optional are "optional" in the
|
|
sense that they are omitted if the lists represented by them
|
|
are empty.
|
|
|
|
At least one cmp-field element must be present in the
|
|
descriptor if the entity's persistence-type is Container and
|
|
the cmp-version is 1.x, and none must not be present if the
|
|
entity's persistence-type is Bean.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:group ref="j2ee:descriptionGroup"/>
|
|
<xsd:element name="ejb-name"
|
|
type="j2ee:ejb-nameType"/>
|
|
<xsd:element name="home"
|
|
type="j2ee:homeType"
|
|
minOccurs="0"/>
|
|
<xsd:element name="remote"
|
|
type="j2ee:remoteType"
|
|
minOccurs="0"/>
|
|
<xsd:element name="local-home"
|
|
type="j2ee:local-homeType"
|
|
minOccurs="0"/>
|
|
<xsd:element name="local"
|
|
type="j2ee:localType"
|
|
minOccurs="0"/>
|
|
<xsd:element name="ejb-class"
|
|
type="j2ee:ejb-classType"/>
|
|
<xsd:element name="persistence-type"
|
|
type="j2ee:persistence-typeType"/>
|
|
<xsd:element name="prim-key-class"
|
|
type="j2ee:fully-qualified-classType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The prim-key-class element contains the
|
|
fully-qualified name of an
|
|
entity bean's primary key class.
|
|
|
|
If the definition of the primary key class is
|
|
deferred to deployment time, the prim-key-class
|
|
element should specify java.lang.Object.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="reentrant"
|
|
type="j2ee:true-falseType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The reentrant element specifies whether an entity
|
|
bean is reentrant or not.
|
|
|
|
The reentrant element must be one of the two
|
|
following: true or false
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="cmp-version"
|
|
type="j2ee:cmp-versionType"
|
|
minOccurs="0"/>
|
|
<xsd:element name="abstract-schema-name"
|
|
type="j2ee:java-identifierType"
|
|
minOccurs="0">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The abstract-schema-name element specifies the name
|
|
of the abstract schema type of an entity bean with
|
|
cmp-version 2.x. It is used in EJB QL queries.
|
|
|
|
For example, the abstract-schema-name for an entity
|
|
bean whose local interface is
|
|
com.acme.commerce.Order might be Order.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="cmp-field"
|
|
type="j2ee:cmp-fieldType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="primkey-field"
|
|
type="j2ee:string"
|
|
minOccurs="0">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The primkey-field element is used to specify the
|
|
name of the primary key field for an entity with
|
|
container-managed persistence.
|
|
|
|
The primkey-field must be one of the fields declared
|
|
in the cmp-field element, and the type of the field
|
|
must be the same as the primary key type.
|
|
|
|
The primkey-field element is not used if the primary
|
|
key maps to multiple container-managed fields
|
|
(i.e. the key is a compound key). In this case, the
|
|
fields of the primary key class must be public, and
|
|
their names must correspond to the field names of
|
|
the entity bean class that comprise the key.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:group ref="j2ee:jndiEnvironmentRefsGroup"/>
|
|
<xsd:element name="security-role-ref"
|
|
type="j2ee:security-role-refType"
|
|
minOccurs="0" maxOccurs="unbounded"/>
|
|
<xsd:element name="security-identity"
|
|
type="j2ee:security-identityType"
|
|
minOccurs="0"/>
|
|
<xsd:element name="query"
|
|
type="j2ee:queryType"
|
|
minOccurs="0" maxOccurs="unbounded"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="exclude-listType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The exclude-listType specifies one or more methods which
|
|
the Assembler marks to be uncallable.
|
|
|
|
If the method permission relation contains methods that are
|
|
in the exclude list, the Deployer should consider those
|
|
methods to be uncallable.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="description"
|
|
type="j2ee:descriptionType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="method"
|
|
type="j2ee:methodType"
|
|
maxOccurs="unbounded"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="message-driven-beanType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The message-driven element declares a message-driven
|
|
bean. The declaration consists of:
|
|
|
|
- an optional description
|
|
- an optional display name
|
|
- an optional icon element that contains a small and a large
|
|
icon file name.
|
|
- a name assigned to the enterprise bean in
|
|
the deployment descriptor
|
|
- the message-driven bean's implementation class
|
|
- an optional declaration of the bean's messaging
|
|
type
|
|
- the message-driven bean's transaction management type
|
|
- an optional declaration of the bean's
|
|
message-destination-type
|
|
- an optional declaration of the bean's
|
|
message-destination-link
|
|
- an optional declaration of the message-driven bean's
|
|
activation configuration properties
|
|
- an optional declaration of the bean's environment
|
|
entries
|
|
- an optional declaration of the bean's EJB references
|
|
- an optional declaration of the bean's local EJB
|
|
references
|
|
- an optional declaration of the bean's web service
|
|
references
|
|
- an optional declaration of the security
|
|
identity to be used for the execution of the bean's
|
|
methods
|
|
- an optional declaration of the bean's
|
|
resource manager connection factory
|
|
references
|
|
- an optional declaration of the bean's resource
|
|
environment references.
|
|
- an optional declaration of the bean's message
|
|
destination references
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:group ref="j2ee:descriptionGroup"/>
|
|
<xsd:element name="ejb-name"
|
|
type="j2ee:ejb-nameType"/>
|
|
<xsd:element name="ejb-class"
|
|
type="j2ee:ejb-classType"/>
|
|
<xsd:element name="messaging-type"
|
|
type="j2ee:fully-qualified-classType"
|
|
minOccurs="0">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The messaging-type element specifies the message
|
|
listener interface of the message-driven bean. If
|
|
the messaging-type element is not specified, it is
|
|
assumed to be javax.jms.MessageListener.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="transaction-type"
|
|
type="j2ee:transaction-typeType"/>
|
|
<xsd:element name="message-destination-type"
|
|
type="j2ee:message-destination-typeType"
|
|
minOccurs="0"/>
|
|
<xsd:element name="message-destination-link"
|
|
type="j2ee:message-destination-linkType"
|
|
minOccurs="0"/>
|
|
<xsd:element name="activation-config"
|
|
type="j2ee:activation-configType"
|
|
minOccurs="0"/>
|
|
<xsd:group ref="j2ee:jndiEnvironmentRefsGroup"/>
|
|
<xsd:element name="security-identity"
|
|
type="j2ee:security-identityType"
|
|
minOccurs="0"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="method-intfType">
|
|
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The method-intf element allows a method element to
|
|
differentiate between the methods with the same name and
|
|
signature that are multiply defined across the home and
|
|
component interfaces (e.g, in both an enterprise bean's
|
|
remote and local interfaces or in both an enterprise bean's
|
|
home and remote interfaces, etc.); the component and web
|
|
service endpoint interfaces, and so on.
|
|
|
|
The method-intf element must be one of the following:
|
|
|
|
Home
|
|
Remote
|
|
LocalHome
|
|
Local
|
|
ServiceEndpoint
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleContent>
|
|
<xsd:restriction base="j2ee:string">
|
|
<xsd:enumeration value="Home"/>
|
|
<xsd:enumeration value="Remote"/>
|
|
<xsd:enumeration value="LocalHome"/>
|
|
<xsd:enumeration value="Local"/>
|
|
<xsd:enumeration value="ServiceEndpoint"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="method-nameType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The method-nameType contains a name of an enterprise
|
|
bean method or the asterisk (*) character. The asterisk is
|
|
used when the element denotes all the methods of an
|
|
enterprise bean's client view interfaces.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleContent>
|
|
<xsd:restriction base="j2ee:string"/>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="method-paramsType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The method-paramsType defines a list of the
|
|
fully-qualified Java type names of the method parameters.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="method-param"
|
|
type="j2ee:java-typeType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The method-param element contains a primitive
|
|
or a fully-qualified Java type name of a method
|
|
parameter.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="method-permissionType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The method-permissionType specifies that one or more
|
|
security roles are allowed to invoke one or more enterprise
|
|
bean methods. The method-permissionType consists of an
|
|
optional description, a list of security role names or an
|
|
indicator to state that the method is unchecked for
|
|
authorization, and a list of method elements.
|
|
|
|
The security roles used in the method-permissionType
|
|
must be defined in the security-role elements of the
|
|
deployment descriptor, and the methods must be methods
|
|
defined in the enterprise bean's home, component and/or web
|
|
service endpoint interfaces.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="description"
|
|
type="j2ee:descriptionType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:choice>
|
|
<xsd:element name="role-name"
|
|
type="j2ee:role-nameType"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="unchecked"
|
|
type="j2ee:emptyType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The unchecked element specifies that a method is
|
|
not checked for authorization by the container
|
|
prior to invocation of the method.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
</xsd:choice>
|
|
<xsd:element name="method"
|
|
type="j2ee:methodType"
|
|
maxOccurs="unbounded"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="methodType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
<![CDATA[
|
|
|
|
The methodType is used to denote a method of an enterprise
|
|
bean's home, component, and/or web service endpoint
|
|
interface, or, in the case of a message-driven bean, the
|
|
bean's message listener method, or a set of such
|
|
methods. The ejb-name element must be the name of one of the
|
|
enterprise beans declared in the deployment descriptor; the
|
|
optional method-intf element allows to distinguish between a
|
|
method with the same signature that is multiply defined
|
|
across the home, component, and/or web service endpoint
|
|
interfaces; the method-name element specifies the method
|
|
name; and the optional method-params elements identify a
|
|
single method among multiple methods with an overloaded
|
|
method name.
|
|
|
|
There are three possible styles of using methodType element
|
|
within a method element:
|
|
|
|
1.
|
|
<method>
|
|
<ejb-name>EJBNAME</ejb-name>
|
|
<method-name>*</method-name>
|
|
</method>
|
|
|
|
This style is used to refer to all the methods of the
|
|
specified enterprise bean's home, component, and/or web
|
|
service endpoint interfaces.
|
|
|
|
2.
|
|
<method>
|
|
<ejb-name>EJBNAME</ejb-name>
|
|
<method-name>METHOD</method-name>
|
|
</method>
|
|
|
|
This style is used to refer to the specified method of
|
|
the specified enterprise bean. If there are multiple
|
|
methods with the same overloaded name, the element of
|
|
this style refers to all the methods with the overloaded
|
|
name.
|
|
|
|
3.
|
|
<method>
|
|
<ejb-name>EJBNAME</ejb-name>
|
|
<method-name>METHOD</method-name>
|
|
<method-params>
|
|
<method-param>PARAM-1</method-param>
|
|
<method-param>PARAM-2</method-param>
|
|
...
|
|
<method-param>PARAM-n</method-param>
|
|
</method-params>
|
|
</method>
|
|
|
|
This style is used to refer to a single method within a
|
|
set of methods with an overloaded name. PARAM-1 through
|
|
PARAM-n are the fully-qualified Java types of the
|
|
method's input parameters (if the method has no input
|
|
arguments, the method-params element contains no
|
|
method-param elements). Arrays are specified by the
|
|
array element's type, followed by one or more pair of
|
|
square brackets (e.g. int[][]). If there are multiple
|
|
methods with the same overloaded name, this style refers
|
|
to all of the overloaded methods.
|
|
|
|
Examples:
|
|
|
|
Style 1: The following method element refers to all the
|
|
methods of the EmployeeService bean's home, component,
|
|
and/or web service endpoint interfaces:
|
|
|
|
<method>
|
|
<ejb-name>EmployeeService</ejb-name>
|
|
<method-name>*</method-name>
|
|
</method>
|
|
|
|
Style 2: The following method element refers to all the
|
|
create methods of the EmployeeService bean's home
|
|
interface(s).
|
|
|
|
<method>
|
|
<ejb-name>EmployeeService</ejb-name>
|
|
<method-name>create</method-name>
|
|
</method>
|
|
|
|
Style 3: The following method element refers to the
|
|
create(String firstName, String LastName) method of the
|
|
EmployeeService bean's home interface(s).
|
|
|
|
<method>
|
|
<ejb-name>EmployeeService</ejb-name>
|
|
<method-name>create</method-name>
|
|
<method-params>
|
|
<method-param>java.lang.String</method-param>
|
|
<method-param>java.lang.String</method-param>
|
|
</method-params>
|
|
</method>
|
|
|
|
The following example illustrates a Style 3 element with
|
|
more complex parameter types. The method
|
|
foobar(char s, int i, int[] iar, mypackage.MyClass mycl,
|
|
mypackage.MyClass[][] myclaar) would be specified as:
|
|
|
|
<method>
|
|
<ejb-name>EmployeeService</ejb-name>
|
|
<method-name>foobar</method-name>
|
|
<method-params>
|
|
<method-param>char</method-param>
|
|
<method-param>int</method-param>
|
|
<method-param>int[]</method-param>
|
|
<method-param>mypackage.MyClass</method-param>
|
|
<method-param>mypackage.MyClass[][]</method-param>
|
|
</method-params>
|
|
</method>
|
|
|
|
The optional method-intf element can be used when it becomes
|
|
necessary to differentiate between a method that is multiply
|
|
defined across the enterprise bean's home, component, and/or
|
|
web service endpoint interfaces with the same name and
|
|
signature.
|
|
|
|
For example, the method element
|
|
|
|
<method>
|
|
<ejb-name>EmployeeService</ejb-name>
|
|
<method-intf>Remote</method-intf>
|
|
<method-name>create</method-name>
|
|
<method-params>
|
|
<method-param>java.lang.String</method-param>
|
|
<method-param>java.lang.String</method-param>
|
|
</method-params>
|
|
</method>
|
|
|
|
can be used to differentiate the create(String, String)
|
|
method defined in the remote interface from the
|
|
create(String, String) method defined in the remote home
|
|
interface, which would be defined as
|
|
|
|
<method>
|
|
<ejb-name>EmployeeService</ejb-name>
|
|
<method-intf>Home</method-intf>
|
|
<method-name>create</method-name>
|
|
<method-params>
|
|
<method-param>java.lang.String</method-param>
|
|
<method-param>java.lang.String</method-param>
|
|
</method-params>
|
|
</method>
|
|
|
|
and the create method that is defined in the local home
|
|
interface which would be defined as
|
|
|
|
<method>
|
|
<ejb-name>EmployeeService</ejb-name>
|
|
<method-intf>LocalHome</method-intf>
|
|
<method-name>create</method-name>
|
|
<method-params>
|
|
<method-param>java.lang.String</method-param>
|
|
<method-param>java.lang.String</method-param>
|
|
</method-params>
|
|
</method>
|
|
|
|
The method-intf element can be used with all th ree Styles
|
|
of the method element usage. For example, the following
|
|
method element example could be used to refer to all the
|
|
methods of the EmployeeService bean's remote home interface.
|
|
|
|
<method>
|
|
<ejb-name>EmployeeService</ejb-name>
|
|
<method-intf>Home</method-intf>
|
|
<method-name>*</method-name>
|
|
</method>
|
|
|
|
]]>
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="description"
|
|
type="j2ee:descriptionType"
|
|
minOccurs="0" maxOccurs="unbounded"/>
|
|
<xsd:element name="ejb-name"
|
|
type="j2ee:ejb-nameType"/>
|
|
<xsd:element name="method-intf"
|
|
type="j2ee:method-intfType"
|
|
minOccurs="0">
|
|
</xsd:element>
|
|
<xsd:element name="method-name"
|
|
type="j2ee:method-nameType"/>
|
|
<xsd:element name="method-params"
|
|
type="j2ee:method-paramsType"
|
|
minOccurs="0"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="multiplicityType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The multiplicityType describes the multiplicity of the
|
|
role that participates in a relation.
|
|
|
|
The value must be one of the two following:
|
|
|
|
One
|
|
Many
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleContent>
|
|
<xsd:restriction base="j2ee:string">
|
|
<xsd:enumeration value="One"/>
|
|
<xsd:enumeration value="Many"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="persistence-typeType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The persistence-typeType specifies an entity bean's persistence
|
|
management type.
|
|
|
|
The persistence-type element must be one of the two following:
|
|
|
|
Bean
|
|
Container
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleContent>
|
|
<xsd:restriction base="j2ee:string">
|
|
<xsd:enumeration value="Bean"/>
|
|
<xsd:enumeration value="Container"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="query-methodType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
<![CDATA[
|
|
|
|
The query-method specifies the method for a finder or select
|
|
query.
|
|
|
|
The method-name element specifies the name of a finder or select
|
|
method in the entity bean's implementation class.
|
|
|
|
Each method-param must be defined for a query-method using the
|
|
method-params element.
|
|
|
|
It is used by the query-method element.
|
|
|
|
Example:
|
|
|
|
<query>
|
|
<description>Method finds large orders</description>
|
|
<query-method>
|
|
<method-name>findLargeOrders</method-name>
|
|
<method-params></method-params>
|
|
</query-method>
|
|
<ejb-ql>
|
|
SELECT OBJECT(o) FROM Order o
|
|
WHERE o.amount > 1000
|
|
</ejb-ql>
|
|
</query>
|
|
|
|
]]>
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="method-name"
|
|
type="j2ee:method-nameType"/>
|
|
<xsd:element name="method-params"
|
|
type="j2ee:method-paramsType"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="queryType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The queryType defines a finder or select
|
|
query. It contains
|
|
- an optional description of the query
|
|
- the specification of the finder or select
|
|
method it is used by
|
|
- an optional specification of the result type
|
|
mapping, if the query is for a select method
|
|
and entity objects are returned.
|
|
- the EJB QL query string that defines the query.
|
|
|
|
Queries that are expressible in EJB QL must use the ejb-ql
|
|
element to specify the query. If a query is not expressible
|
|
in EJB QL, the description element should be used to
|
|
describe the semantics of the query and the ejb-ql element
|
|
should be empty.
|
|
|
|
The result-type-mapping is an optional element. It can only
|
|
be present if the query-method specifies a select method
|
|
that returns entity objects. The default value for the
|
|
result-type-mapping element is "Local".
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="description"
|
|
type="j2ee:descriptionType" minOccurs="0"/>
|
|
<xsd:element name="query-method"
|
|
type="j2ee:query-methodType"/>
|
|
<xsd:element name="result-type-mapping"
|
|
type="j2ee:result-type-mappingType"
|
|
minOccurs="0"/>
|
|
<xsd:element name="ejb-ql"
|
|
type="j2ee:xsdStringType"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="relationship-role-sourceType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The relationship-role-sourceType designates the source of a
|
|
role that participates in a relationship. A
|
|
relationship-role-sourceType is used by
|
|
relationship-role-source elements to uniquely identify an
|
|
entity bean.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="description"
|
|
type="j2ee:descriptionType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="ejb-name"
|
|
type="j2ee:ejb-nameType"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="relationshipsType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The relationshipsType describes the relationships in
|
|
which entity beans with container-managed persistence
|
|
participate. The relationshipsType contains an optional
|
|
description; and a list of ejb-relation elements, which
|
|
specify the container managed relationships.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="description"
|
|
type="j2ee:descriptionType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="ejb-relation"
|
|
type="j2ee:ejb-relationType"
|
|
maxOccurs="unbounded">
|
|
|
|
<xsd:unique name="role-name-uniqueness">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The ejb-relationship-role-name contains the name of a
|
|
relationship role. The name must be unique within
|
|
a relationship, but can be reused in different
|
|
relationships.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector
|
|
xpath=".//j2ee:ejb-relationship-role-name"/>
|
|
<xsd:field
|
|
xpath="."/>
|
|
</xsd:unique>
|
|
</xsd:element>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="result-type-mappingType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The result-type-mappingType is used in the query element to
|
|
specify whether an abstract schema type returned by a query
|
|
for a select method is to be mapped to an EJBLocalObject or
|
|
EJBObject type.
|
|
|
|
The value must be one of the following:
|
|
|
|
Local
|
|
Remote
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleContent>
|
|
<xsd:restriction base="j2ee:string">
|
|
<xsd:enumeration value="Local"/>
|
|
<xsd:enumeration value="Remote"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="security-identityType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The security-identityType specifies whether the caller's
|
|
security identity is to be used for the execution of the
|
|
methods of the enterprise bean or whether a specific run-as
|
|
identity is to be used. It contains an optional description
|
|
and a specification of the security identity to be used.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:element name="description"
|
|
type="j2ee:descriptionType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:choice>
|
|
<xsd:element name="use-caller-identity"
|
|
type="j2ee:emptyType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The use-caller-identity element specifies that
|
|
the caller's security identity be used as the
|
|
security identity for the execution of the
|
|
enterprise bean's methods.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="run-as"
|
|
type="j2ee:run-asType"/>
|
|
</xsd:choice>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="session-beanType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The session-beanType declares an session bean. The
|
|
declaration consists of:
|
|
|
|
- an optional description
|
|
- an optional display name
|
|
- an optional icon element that contains a small and a large
|
|
icon file name
|
|
- a name assigned to the enterprise bean
|
|
in the deployment description
|
|
- the names of the session bean's remote home and
|
|
remote interfaces, if any
|
|
- the names of the session bean's local home and
|
|
local interfaces, if any
|
|
- the name of the session bean's web service endpoint
|
|
interface, if any
|
|
- the session bean's implementation class
|
|
- the session bean's state management type
|
|
- the session bean's transaction management type
|
|
- an optional declaration of the bean's
|
|
environment entries
|
|
- an optional declaration of the bean's EJB references
|
|
- an optional declaration of the bean's local
|
|
EJB references
|
|
- an optional declaration of the bean's web
|
|
service references
|
|
- an optional declaration of the security role
|
|
references
|
|
- an optional declaration of the security identity
|
|
to be used for the execution of the bean's methods
|
|
- an optional declaration of the bean's resource
|
|
manager connection factory references
|
|
- an optional declaration of the bean's resource
|
|
environment references.
|
|
- an optional declaration of the bean's message
|
|
destination references
|
|
|
|
The elements that are optional are "optional" in the sense
|
|
that they are omitted when if lists represented by them are
|
|
empty.
|
|
|
|
Either both the local-home and the local elements or both
|
|
the home and the remote elements must be specified for the
|
|
session bean.
|
|
|
|
The service-endpoint element may only be specified if the
|
|
bean is a stateless session bean.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<xsd:sequence>
|
|
<xsd:group ref="j2ee:descriptionGroup"/>
|
|
<xsd:element name="ejb-name"
|
|
type="j2ee:ejb-nameType"/>
|
|
<xsd:element name="home"
|
|
type="j2ee:homeType"
|
|
minOccurs="0"/>
|
|
<xsd:element name="remote"
|
|
type="j2ee:remoteType"
|
|
minOccurs="0"/>
|
|
<xsd:element name="local-home"
|
|
type="j2ee:local-homeType"
|
|
minOccurs="0"/>
|
|
<xsd:element name="local"
|
|
type="j2ee:localType"
|
|
minOccurs="0"/>
|
|
<xsd:element name="service-endpoint"
|
|
type="j2ee:fully-qualified-classType"
|
|
minOccurs="0">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The service-endpoint element contains the
|
|
fully-qualified name of the enterprise bean's web
|
|
service endpoint interface. The service-endpoint
|
|
element may only be specified for a stateless
|
|
session bean. The specified interface must be a
|
|
valid JAX-RPC service endpoint interface.
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="ejb-class"
|
|
type="j2ee:ejb-classType"/>
|
|
<xsd:element name="session-type"
|
|
type="j2ee:session-typeType"/>
|
|
<xsd:element name="transaction-type"
|
|
type="j2ee:transaction-typeType"/>
|
|
<xsd:group ref="j2ee:jndiEnvironmentRefsGroup"/>
|
|
<xsd:element name="security-role-ref"
|
|
type="j2ee:security-role-refType"
|
|
minOccurs="0"
|
|
maxOccurs="unbounded"/>
|
|
<xsd:element name="security-identity"
|
|
type="j2ee:security-identityType"
|
|
minOccurs="0"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="id" type="xsd:ID"/>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="session-typeType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The session-typeType describes whether the session bean is a
|
|
stateful session or stateless session. It is used by
|
|
session-type elements.
|
|
|
|
The value must be one of the two following:
|
|
|
|
Stateful
|
|
Stateless
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleContent>
|
|
<xsd:restriction base="j2ee:string">
|
|
<xsd:enumeration value="Stateful"/>
|
|
<xsd:enumeration value="Stateless"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="trans-attributeType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The trans-attributeType specifies how the container must
|
|
manage the transaction boundaries when delegating a method
|
|
invocation to an enterprise bean's business method.
|
|
|
|
The value must be one of the following:
|
|
|
|
NotSupported
|
|
Supports
|
|
Required
|
|
RequiresNew
|
|
Mandatory
|
|
Never
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleContent>
|
|
<xsd:restriction base="j2ee:string">
|
|
<xsd:enumeration value="NotSupported"/>
|
|
<xsd:enumeration value="Supports"/>
|
|
<xsd:enumeration value="Required"/>
|
|
<xsd:enumeration value="RequiresNew"/>
|
|
<xsd:enumeration value="Mandatory"/>
|
|
<xsd:enumeration value="Never"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
|
|
<!-- **************************************************** -->
|
|
|
|
<xsd:complexType name="transaction-typeType">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
|
|
The transaction-typeType specifies an enterprise bean's
|
|
transaction management type.
|
|
|
|
The transaction-type must be one of the two following:
|
|
|
|
Bean
|
|
Container
|
|
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleContent>
|
|
<xsd:restriction base="j2ee:string">
|
|
<xsd:enumeration value="Bean"/>
|
|
<xsd:enumeration value="Container"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
|
|
</xsd:schema>
|
|
|