glassfish 0.1.1-universal-java-1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (135) hide show
  1. data/COPYRIGHT +33 -0
  2. data/LICENSE.txt +263 -0
  3. data/README +12 -0
  4. data/bin/asadmin +7 -0
  5. data/bin/asadmin.bat +8 -0
  6. data/bin/glassfish_rails +40 -0
  7. data/config/asadminenv.conf +6 -0
  8. data/config/asenv.bat +28 -0
  9. data/config/asenv.conf +27 -0
  10. data/config/glassfish.container +4 -0
  11. data/domains/domain1/config/admin-keyfile +3 -0
  12. data/domains/domain1/config/cacerts.jks +0 -0
  13. data/domains/domain1/config/default-web.xml +906 -0
  14. data/domains/domain1/config/domain-passwords +0 -0
  15. data/domains/domain1/config/domain.xml +208 -0
  16. data/domains/domain1/config/keyfile +6 -0
  17. data/domains/domain1/config/keystore.jks +0 -0
  18. data/domains/domain1/config/logging.properties +82 -0
  19. data/domains/domain1/config/login.conf +18 -0
  20. data/domains/domain1/config/server.policy +160 -0
  21. data/domains/domain1/config/sun-acc.xml +40 -0
  22. data/domains/domain1/config/wss-server-config-1.0.xml +86 -0
  23. data/domains/domain1/config/wss-server-config-2.0.xml +94 -0
  24. data/domains/domain1/docroot/favicon.gif +0 -0
  25. data/domains/domain1/docroot/index.html +87 -0
  26. data/domains/domain1/master-password +0 -0
  27. data/lib/appclient/appclientlogin.conf +10 -0
  28. data/lib/appclient/client.policy +79 -0
  29. data/lib/appclient/wss-client-config-1.0.xml +84 -0
  30. data/lib/appclient/wss-client-config-2.0.xml +96 -0
  31. data/lib/dtds/application-client_1_2.dtd +292 -0
  32. data/lib/dtds/application-client_1_3.dtd +506 -0
  33. data/lib/dtds/application_1_2.dtd +197 -0
  34. data/lib/dtds/application_1_3.dtd +312 -0
  35. data/lib/dtds/connector_1_0.dtd +561 -0
  36. data/lib/dtds/ejb-jar_1_1.dtd +894 -0
  37. data/lib/dtds/ejb-jar_2_0.dtd +1671 -0
  38. data/lib/dtds/sun-application-client-container_1_0.dtd +123 -0
  39. data/lib/dtds/sun-application-client-container_1_1.dtd +264 -0
  40. data/lib/dtds/sun-application-client-container_1_2.dtd +267 -0
  41. data/lib/dtds/sun-application-client_1_3-0.dtd +57 -0
  42. data/lib/dtds/sun-application-client_1_4-0.dtd +182 -0
  43. data/lib/dtds/sun-application-client_1_4-1.dtd +431 -0
  44. data/lib/dtds/sun-application-client_5_0-0.dtd +495 -0
  45. data/lib/dtds/sun-application_1_3-0.dtd +30 -0
  46. data/lib/dtds/sun-application_1_4-0.dtd +44 -0
  47. data/lib/dtds/sun-application_5_0-0.dtd +51 -0
  48. data/lib/dtds/sun-cmp-mapping_1_0.dtd +100 -0
  49. data/lib/dtds/sun-cmp-mapping_1_1.dtd +99 -0
  50. data/lib/dtds/sun-cmp-mapping_1_2.dtd +106 -0
  51. data/lib/dtds/sun-connector_1_0-0.dtd +66 -0
  52. data/lib/dtds/sun-connector_1_5-0.dtd +62 -0
  53. data/lib/dtds/sun-domain_1_0.dtd +2007 -0
  54. data/lib/dtds/sun-domain_1_1.dtd +3080 -0
  55. data/lib/dtds/sun-domain_1_2.dtd +3697 -0
  56. data/lib/dtds/sun-domain_1_3.dtd +3867 -0
  57. data/lib/dtds/sun-ejb-jar_2_0-0.dtd +449 -0
  58. data/lib/dtds/sun-ejb-jar_2_0-1.dtd +454 -0
  59. data/lib/dtds/sun-ejb-jar_2_1-0.dtd +756 -0
  60. data/lib/dtds/sun-ejb-jar_2_1-1.dtd +1085 -0
  61. data/lib/dtds/sun-ejb-jar_3_0-0.dtd +1113 -0
  62. data/lib/dtds/sun-loadbalancer_1_0.dtd +156 -0
  63. data/lib/dtds/sun-loadbalancer_1_1.dtd +172 -0
  64. data/lib/dtds/sun-resources_1_0.dtd +650 -0
  65. data/lib/dtds/sun-resources_1_1.dtd +650 -0
  66. data/lib/dtds/sun-resources_1_2.dtd +662 -0
  67. data/lib/dtds/sun-resources_1_3.dtd +732 -0
  68. data/lib/dtds/sun-server_1_0.dtd +1056 -0
  69. data/lib/dtds/sun-web-app_2_3-0.dtd +230 -0
  70. data/lib/dtds/sun-web-app_2_3-1.dtd +230 -0
  71. data/lib/dtds/sun-web-app_2_4-0.dtd +466 -0
  72. data/lib/dtds/sun-web-app_2_4-1.dtd +742 -0
  73. data/lib/dtds/sun-web-app_2_5-0.dtd +789 -0
  74. data/lib/dtds/web-app_2_2.dtd +639 -0
  75. data/lib/dtds/web-app_2_3.dtd +1063 -0
  76. data/lib/dtds/web-jsptaglibrary_1_1.dtd +265 -0
  77. data/lib/dtds/web-jsptaglibrary_1_2.dtd +468 -0
  78. data/lib/package-appclient.xml +185 -0
  79. data/lib/processLauncher.properties +25 -0
  80. data/lib/processLauncher.xml +189 -0
  81. data/lib/schemas/XMLSchema.dtd +402 -0
  82. data/lib/schemas/application-client_1_4.xsd +267 -0
  83. data/lib/schemas/application-client_5.xsd +304 -0
  84. data/lib/schemas/application_1_4.xsd +315 -0
  85. data/lib/schemas/application_5.xsd +336 -0
  86. data/lib/schemas/connector_1_5.xsd +1036 -0
  87. data/lib/schemas/datatypes.dtd +203 -0
  88. data/lib/schemas/ejb-jar_2_1.xsd +2208 -0
  89. data/lib/schemas/ejb-jar_3_0.xsd +2706 -0
  90. data/lib/schemas/j2ee_1_4.xsd +1608 -0
  91. data/lib/schemas/j2ee_jaxrpc_mapping_1_1.xsd +886 -0
  92. data/lib/schemas/j2ee_web_services_1_1.xsd +491 -0
  93. data/lib/schemas/j2ee_web_services_client_1_1.xsd +345 -0
  94. data/lib/schemas/javaee_5.xsd +2096 -0
  95. data/lib/schemas/javaee_web_services_1_2.xsd +747 -0
  96. data/lib/schemas/javaee_web_services_client_1_2.xsd +578 -0
  97. data/lib/schemas/jax-rpc-ri-config.xsd +416 -0
  98. data/lib/schemas/jsp_2_0.xsd +308 -0
  99. data/lib/schemas/jsp_2_1.xsd +343 -0
  100. data/lib/schemas/orm_1_0.xsd +1516 -0
  101. data/lib/schemas/persistence_1_0.xsd +260 -0
  102. data/lib/schemas/web-app_2_4.xsd +1234 -0
  103. data/lib/schemas/web-app_2_5.xsd +1271 -0
  104. data/lib/schemas/web-jsptaglibrary_2_0.xsd +1010 -0
  105. data/lib/schemas/web-jsptaglibrary_2_1.xsd +1144 -0
  106. data/lib/schemas/xml.xsd +82 -0
  107. data/modules/admin-cli-10.0-SNAPSHOT.jar +0 -0
  108. data/modules/auto-depends-0.2-SNAPSHOT.jar +0 -0
  109. data/modules/cli-framework-10.0-SNAPSHOT.jar +0 -0
  110. data/modules/common-ee-util-10.0-SNAPSHOT.jar +0 -0
  111. data/modules/common-util-10.0-SNAPSHOT.jar +0 -0
  112. data/modules/config-0.2-SNAPSHOT.jar +0 -0
  113. data/modules/config-api-10.0-SNAPSHOT.jar +0 -0
  114. data/modules/gf-jruby-connector-10.0-SNAPSHOT.jar +0 -0
  115. data/modules/glassfish-10.0-SNAPSHOT.jar +0 -0
  116. data/modules/glassfish-api-10.0-SNAPSHOT.jar +0 -0
  117. data/modules/glassfish.rb +10 -0
  118. data/modules/grizzly-framework-1.7.1.jar +0 -0
  119. data/modules/grizzly-http-1.7.1.jar +0 -0
  120. data/modules/grizzly-http-utils-1.7.1.jar +0 -0
  121. data/modules/grizzly-jruby-1.7.0.jar +0 -0
  122. data/modules/grizzly-jruby-module-1.7.0.jar +0 -0
  123. data/modules/grizzly-module-1.7.1.jar +0 -0
  124. data/modules/grizzly-portunif-1.7.1.jar +0 -0
  125. data/modules/grizzly-rcm-1.7.1.jar +0 -0
  126. data/modules/hk2-0.2-SNAPSHOT.jar +0 -0
  127. data/modules/hk2-core-0.2-SNAPSHOT.jar +0 -0
  128. data/modules/junit-4.3.1.jar +0 -0
  129. data/modules/kernel-10.0-SNAPSHOT.jar +0 -0
  130. data/modules/persistence-api-1.0b.jar +0 -0
  131. data/modules/servlet-api-2.5.jar +0 -0
  132. data/modules/sjsxp-1.0.jar +0 -0
  133. data/modules/stax-api-1.0-2.jar +0 -0
  134. data/modules/tiger-types-1.0.jar +0 -0
  135. metadata +206 -0
@@ -0,0 +1,2706 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+
3
+ <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
4
+ targetNamespace="http://java.sun.com/xml/ns/javaee"
5
+ xmlns:javaee="http://java.sun.com/xml/ns/javaee"
6
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
7
+ elementFormDefault="qualified"
8
+ attributeFormDefault="unqualified"
9
+ version="3.0">
10
+ <xsd:annotation>
11
+ <xsd:documentation>
12
+ @(#)ejb-jar_3_0.xsds 1.51 02/23/06
13
+ </xsd:documentation>
14
+ </xsd:annotation>
15
+
16
+ <xsd:annotation>
17
+ <xsd:documentation>
18
+
19
+ Copyright 2003-2006 Sun Microsystems, Inc.
20
+ 4150 Network Circle
21
+ Santa Clara, California 95054
22
+ U.S.A
23
+ All rights reserved.
24
+
25
+ Sun Microsystems, Inc. has intellectual property rights
26
+ relating to technology described in this document. In
27
+ particular, and without limitation, these intellectual
28
+ property rights may include one or more of the U.S. patents
29
+ listed at http://www.sun.com/patents and one or more
30
+ additional patents or pending patent applications in the
31
+ U.S. and other countries.
32
+
33
+ This document and the technology which it describes are
34
+ distributed under licenses restricting their use, copying,
35
+ distribution, and decompilation. No part of this document
36
+ may be reproduced in any form by any means without prior
37
+ written authorization of Sun and its licensors, if any.
38
+
39
+ Third-party software, including font technology, is
40
+ copyrighted and licensed from Sun suppliers.
41
+
42
+ Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
43
+ JavaServer Pages, Enterprise JavaBeans and the Java Coffee
44
+ Cup logo are trademarks or registered trademarks of Sun
45
+ Microsystems, Inc. in the U.S. and other countries.
46
+
47
+ Federal Acquisitions: Commercial Software - Government Users
48
+ Subject to Standard License Terms and Conditions.
49
+
50
+ </xsd:documentation>
51
+ </xsd:annotation>
52
+
53
+ <xsd:annotation>
54
+ <xsd:documentation>
55
+ <![CDATA[
56
+
57
+ This is the XML Schema for the EJB 3.0 deployment descriptor.
58
+ The deployment descriptor must be named "META-INF/ejb-jar.xml" in
59
+ the EJB's jar file. All EJB deployment descriptors must indicate
60
+ the ejb-jar schema by using the Java EE namespace:
61
+
62
+ http://java.sun.com/xml/ns/javaee
63
+
64
+ and by indicating the version of the schema by
65
+ using the version element as shown below:
66
+
67
+ <ejb-jar xmlns="http://java.sun.com/xml/ns/javaee"
68
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
69
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
70
+ http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd"
71
+ version="3.0">
72
+ ...
73
+ </ejb-jar>
74
+
75
+ The instance documents may indicate the published version of
76
+ the schema using the xsi:schemaLocation attribute for the
77
+ Java EE namespace with the following location:
78
+
79
+ http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd
80
+
81
+ ]]>
82
+ </xsd:documentation>
83
+ </xsd:annotation>
84
+
85
+ <xsd:annotation>
86
+ <xsd:documentation>
87
+
88
+ The following conventions apply to all Java EE
89
+ deployment descriptor elements unless indicated otherwise.
90
+
91
+ - In elements that specify a pathname to a file within the
92
+ same JAR file, relative filenames (i.e., those not
93
+ starting with "/") are considered relative to the root of
94
+ the JAR file's namespace. Absolute filenames (i.e., those
95
+ starting with "/") also specify names in the root of the
96
+ JAR file's namespace. In general, relative names are
97
+ preferred. The exception is .war files where absolute
98
+ names are preferred for consistency with the Servlet API.
99
+
100
+ </xsd:documentation>
101
+ </xsd:annotation>
102
+
103
+ <xsd:include schemaLocation="javaee_5.xsd"/>
104
+
105
+
106
+ <!-- **************************************************** -->
107
+
108
+ <xsd:element name="ejb-jar" type="javaee:ejb-jarType">
109
+ <xsd:annotation>
110
+ <xsd:documentation>
111
+
112
+ This is the root of the ejb-jar deployment descriptor.
113
+
114
+ </xsd:documentation>
115
+ </xsd:annotation>
116
+
117
+ <xsd:key name="ejb-name-key">
118
+ <xsd:annotation>
119
+ <xsd:documentation>
120
+
121
+ The ejb-name element contains the name of an enterprise
122
+ bean. The name must be unique within the ejb-jar file.
123
+
124
+ </xsd:documentation>
125
+ </xsd:annotation>
126
+ <xsd:selector xpath="javaee:enterprise-beans/*"/>
127
+ <xsd:field xpath="javaee:ejb-name"/>
128
+ </xsd:key>
129
+
130
+ <xsd:keyref name="ejb-name-references"
131
+ refer="javaee:ejb-name-key">
132
+ <xsd:annotation>
133
+ <xsd:documentation>
134
+
135
+ The keyref indicates the references from
136
+ relationship-role-source must be to a specific ejb-name
137
+ defined within the scope of enterprise-beans element.
138
+
139
+ </xsd:documentation>
140
+ </xsd:annotation>
141
+ <xsd:selector
142
+ xpath=".//javaee:ejb-relationship-role/javaee:relationship-role-source"/>
143
+ <xsd:field
144
+ xpath="javaee:ejb-name"/>
145
+ </xsd:keyref>
146
+
147
+ <xsd:key name="role-name-key">
148
+ <xsd:annotation>
149
+ <xsd:documentation>
150
+
151
+ A role-name-key is specified to allow the references
152
+ from the security-role-refs.
153
+
154
+ </xsd:documentation>
155
+ </xsd:annotation>
156
+ <xsd:selector xpath="javaee:assembly-descriptor/javaee:security-role"/>
157
+ <xsd:field xpath="javaee:role-name"/>
158
+ </xsd:key>
159
+
160
+ <xsd:keyref name="role-name-references"
161
+ refer="javaee:role-name-key">
162
+ <xsd:annotation>
163
+ <xsd:documentation>
164
+
165
+ The keyref indicates the references from
166
+ security-role-ref to a specified role-name.
167
+
168
+ </xsd:documentation>
169
+ </xsd:annotation>
170
+ <xsd:selector xpath="javaee:enterprise-beans/*/javaee:security-role-ref"/>
171
+ <xsd:field xpath="javaee:role-link"/>
172
+ </xsd:keyref>
173
+ </xsd:element>
174
+
175
+
176
+ <!-- **************************************************** -->
177
+
178
+ <xsd:complexType name="activation-config-propertyType">
179
+ <xsd:annotation>
180
+ <xsd:documentation>
181
+
182
+ The activation-config-propertyType contains a name/value
183
+ configuration property pair for a message-driven bean.
184
+
185
+ The properties that are recognized for a particular
186
+ message-driven bean are determined by the messaging type.
187
+
188
+ </xsd:documentation>
189
+ </xsd:annotation>
190
+
191
+ <xsd:sequence>
192
+ <xsd:element name="activation-config-property-name"
193
+ type="javaee:xsdStringType">
194
+ <xsd:annotation>
195
+ <xsd:documentation>
196
+
197
+ The activation-config-property-name element contains
198
+ the name for an activation configuration property of
199
+ a message-driven bean.
200
+
201
+ For JMS message-driven beans, the following property
202
+ names are recognized: acknowledgeMode,
203
+ messageSelector, destinationType, subscriptionDurability
204
+
205
+ </xsd:documentation>
206
+ </xsd:annotation>
207
+ </xsd:element>
208
+ <xsd:element name="activation-config-property-value"
209
+ type="javaee:xsdStringType">
210
+ <xsd:annotation>
211
+ <xsd:documentation>
212
+
213
+ The activation-config-property-value element
214
+ contains the value for an activation configuration
215
+ property of a message-driven bean.
216
+
217
+ </xsd:documentation>
218
+ </xsd:annotation>
219
+ </xsd:element>
220
+ </xsd:sequence>
221
+ <xsd:attribute name="id" type="xsd:ID"/>
222
+ </xsd:complexType>
223
+
224
+ <!-- **************************************************** -->
225
+
226
+ <xsd:complexType name="activation-configType">
227
+ <xsd:annotation>
228
+ <xsd:documentation>
229
+
230
+ The activation-configType defines information about the
231
+ expected configuration properties of the message-driven bean
232
+ in its operational environment. This may include information
233
+ about message acknowledgement, message selector, expected
234
+ destination type, etc.
235
+
236
+ The configuration information is expressed in terms of
237
+ name/value configuration properties.
238
+
239
+ The properties that are recognized for a particular
240
+ message-driven bean are determined by the messaging type.
241
+
242
+ </xsd:documentation>
243
+ </xsd:annotation>
244
+
245
+ <xsd:sequence>
246
+ <xsd:element name="description"
247
+ type="javaee:descriptionType"
248
+ minOccurs="0"
249
+ maxOccurs="unbounded"/>
250
+ <xsd:element name="activation-config-property"
251
+ type="javaee:activation-config-propertyType"
252
+ maxOccurs="unbounded"/>
253
+ </xsd:sequence>
254
+ <xsd:attribute name="id" type="xsd:ID"/>
255
+ </xsd:complexType>
256
+
257
+ <!-- **************************************************** -->
258
+
259
+ <xsd:complexType name="application-exceptionType">
260
+ <xsd:annotation>
261
+ <xsd:documentation>
262
+
263
+ The application-exceptionType declares an application
264
+ exception. The declaration consists of:
265
+
266
+ - the exception class. When the container receives
267
+ an exception of this type, it is required to
268
+ forward this exception as an applcation exception
269
+ to the client regardless of whether it is a checked
270
+ or unchecked exception.
271
+ - an optional rollback element. If this element is
272
+ set to true, the container must rollback the current
273
+ transaction before forwarding the exception to the
274
+ client. If not specified, it defaults to false.
275
+
276
+ </xsd:documentation>
277
+ </xsd:annotation>
278
+ <xsd:sequence>
279
+ <xsd:element name="exception-class"
280
+ type="javaee:fully-qualified-classType"/>
281
+ <xsd:element name="rollback"
282
+ type="javaee:true-falseType"
283
+ minOccurs="0"/>
284
+ </xsd:sequence>
285
+ <xsd:attribute name="id" type="xsd:ID"/>
286
+ </xsd:complexType>
287
+
288
+ <!-- **************************************************** -->
289
+
290
+ <xsd:complexType name="around-invokeType">
291
+ <xsd:annotation>
292
+ <xsd:documentation>
293
+
294
+ The around-invoke type specifies a method on a
295
+ class to be called during the around invoke portion of an
296
+ ejb invocation. Note that each class may have only one
297
+ around invoke method and that the method may not be
298
+ overloaded.
299
+
300
+ If the class element is missing then
301
+ the class defining the callback is assumed to be the
302
+ interceptor class or component class in scope at the
303
+ location in the descriptor in which the around invoke
304
+ definition appears.
305
+
306
+ </xsd:documentation>
307
+ </xsd:annotation>
308
+ <xsd:sequence>
309
+ <xsd:element name="class"
310
+ type="javaee:fully-qualified-classType"
311
+ minOccurs="0"/>
312
+ <xsd:element name="method-name"
313
+ type="javaee:java-identifierType"/>
314
+ </xsd:sequence>
315
+ </xsd:complexType>
316
+
317
+ <!-- **************************************************** -->
318
+
319
+ <xsd:complexType name="assembly-descriptorType">
320
+ <xsd:annotation>
321
+ <xsd:documentation>
322
+
323
+ The assembly-descriptorType defines
324
+ application-assembly information.
325
+
326
+ The application-assembly information consists of the
327
+ following parts: the definition of security roles, the
328
+ definition of method permissions, the definition of
329
+ transaction attributes for enterprise beans with
330
+ container-managed transaction demarcation, the definition
331
+ of interceptor bindings, a list of
332
+ methods to be excluded from being invoked, and a list of
333
+ exception types that should be treated as application exceptions.
334
+
335
+ All the parts are optional in the sense that they are
336
+ omitted if the lists represented by them are empty.
337
+
338
+ Providing an assembly-descriptor in the deployment
339
+ descriptor is optional for the ejb-jar file producer.
340
+
341
+ </xsd:documentation>
342
+ </xsd:annotation>
343
+
344
+ <xsd:sequence>
345
+ <xsd:element name="security-role"
346
+ type="javaee:security-roleType"
347
+ minOccurs="0"
348
+ maxOccurs="unbounded"/>
349
+ <xsd:element name="method-permission"
350
+ type="javaee:method-permissionType"
351
+ minOccurs="0"
352
+ maxOccurs="unbounded"/>
353
+ <xsd:element name="container-transaction"
354
+ type="javaee:container-transactionType"
355
+ minOccurs="0"
356
+ maxOccurs="unbounded"/>
357
+ <xsd:element name="interceptor-binding"
358
+ type="javaee:interceptor-bindingType"
359
+ minOccurs="0"
360
+ maxOccurs="unbounded"/>
361
+ <xsd:element name="message-destination"
362
+ type="javaee:message-destinationType"
363
+ minOccurs="0"
364
+ maxOccurs="unbounded"/>
365
+ <xsd:element name="exclude-list"
366
+ type="javaee:exclude-listType"
367
+ minOccurs="0"/>
368
+ <xsd:element name="application-exception"
369
+ type="javaee:application-exceptionType"
370
+ minOccurs="0"
371
+ maxOccurs="unbounded"/>
372
+ </xsd:sequence>
373
+ <xsd:attribute name="id" type="xsd:ID"/>
374
+ </xsd:complexType>
375
+
376
+ <!-- **************************************************** -->
377
+
378
+ <xsd:complexType name="cmp-fieldType">
379
+ <xsd:annotation>
380
+ <xsd:documentation>
381
+
382
+ The cmp-fieldType describes a container-managed field. The
383
+ cmp-fieldType contains an optional description of the field,
384
+ and the name of the field.
385
+
386
+ </xsd:documentation>
387
+ </xsd:annotation>
388
+ <xsd:sequence>
389
+ <xsd:element name="description"
390
+ type="javaee:descriptionType"
391
+ minOccurs="0"
392
+ maxOccurs="unbounded"/>
393
+ <xsd:element name="field-name"
394
+ type="javaee:java-identifierType">
395
+ <xsd:annotation>
396
+ <xsd:documentation>
397
+
398
+ The field-name element specifies the name of a
399
+ container managed field.
400
+
401
+ The name of the cmp-field of an entity bean with
402
+ cmp-version 2.x must begin with a lowercase
403
+ letter. This field is accessed by methods whose
404
+ names consists of the name of the field specified by
405
+ field-name in which the first letter is uppercased,
406
+ prefixed by "get" or "set".
407
+
408
+ The name of the cmp-field of an entity bean with
409
+ cmp-version 1.x must denote a public field of the
410
+ enterprise bean class or one of its superclasses.
411
+
412
+ </xsd:documentation>
413
+ </xsd:annotation>
414
+ </xsd:element>
415
+ </xsd:sequence>
416
+ <xsd:attribute name="id" type="xsd:ID"/>
417
+ </xsd:complexType>
418
+
419
+ <!-- **************************************************** -->
420
+
421
+ <xsd:complexType name="cmp-versionType">
422
+ <xsd:annotation>
423
+ <xsd:documentation>
424
+
425
+ The cmp-versionType specifies the version of an entity bean
426
+ with container-managed persistence. It is used by
427
+ cmp-version elements.
428
+
429
+ The value must be one of the two following:
430
+
431
+ 1.x
432
+ 2.x
433
+
434
+ </xsd:documentation>
435
+ </xsd:annotation>
436
+ <xsd:simpleContent>
437
+ <xsd:restriction base="javaee:string">
438
+ <xsd:enumeration value="1.x"/>
439
+ <xsd:enumeration value="2.x"/>
440
+ </xsd:restriction>
441
+ </xsd:simpleContent>
442
+ </xsd:complexType>
443
+
444
+ <!-- **************************************************** -->
445
+
446
+ <xsd:complexType name="cmr-field-typeType">
447
+ <xsd:annotation>
448
+ <xsd:documentation>
449
+
450
+ The cmr-field-type element specifies the class of a
451
+ collection-valued logical relationship field in the entity
452
+ bean class. The value of an element using cmr-field-typeType
453
+ must be either: java.util.Collection or java.util.Set.
454
+
455
+ </xsd:documentation>
456
+ </xsd:annotation>
457
+ <xsd:simpleContent>
458
+ <xsd:restriction base="javaee:string">
459
+ <xsd:enumeration value="java.util.Collection"/>
460
+ <xsd:enumeration value="java.util.Set"/>
461
+ </xsd:restriction>
462
+ </xsd:simpleContent>
463
+ </xsd:complexType>
464
+
465
+ <!-- **************************************************** -->
466
+
467
+ <xsd:complexType name="cmr-fieldType">
468
+ <xsd:annotation>
469
+ <xsd:documentation>
470
+
471
+ The cmr-fieldType describes the bean provider's view of
472
+ a relationship. It consists of an optional description, and
473
+ the name and the class type of a field in the source of a
474
+ role of a relationship. The cmr-field-name element
475
+ corresponds to the name used for the get and set accessor
476
+ methods for the relationship. The cmr-field-type element is
477
+ used only for collection-valued cmr-fields. It specifies the
478
+ type of the collection that is used.
479
+
480
+ </xsd:documentation>
481
+ </xsd:annotation>
482
+
483
+ <xsd:sequence>
484
+ <xsd:element name="description"
485
+ type="javaee:descriptionType"
486
+ minOccurs="0"
487
+ maxOccurs="unbounded"/>
488
+ <xsd:element name="cmr-field-name"
489
+ type="javaee:string">
490
+ <xsd:annotation>
491
+ <xsd:documentation>
492
+
493
+ The cmr-field-name element specifies the name of a
494
+ logical relationship field in the entity bean
495
+ class. The name of the cmr-field must begin with a
496
+ lowercase letter. This field is accessed by methods
497
+ whose names consist of the name of the field
498
+ specified by cmr-field-name in which the first
499
+ letter is uppercased, prefixed by "get" or "set".
500
+
501
+ </xsd:documentation>
502
+ </xsd:annotation>
503
+ </xsd:element>
504
+ <xsd:element name="cmr-field-type"
505
+ type="javaee:cmr-field-typeType"
506
+ minOccurs="0"/>
507
+ </xsd:sequence>
508
+ <xsd:attribute name="id" type="xsd:ID"/>
509
+ </xsd:complexType>
510
+
511
+ <!-- **************************************************** -->
512
+
513
+ <xsd:complexType name="container-transactionType">
514
+ <xsd:annotation>
515
+ <xsd:documentation>
516
+
517
+ The container-transactionType specifies how the container
518
+ must manage transaction scopes for the enterprise bean's
519
+ method invocations. It defines an optional description, a
520
+ list of method elements, and a transaction attribute. The
521
+ transaction attribute is to be applied to all the specified
522
+ methods.
523
+
524
+ </xsd:documentation>
525
+ </xsd:annotation>
526
+
527
+ <xsd:sequence>
528
+ <xsd:element name="description"
529
+ type="javaee:descriptionType"
530
+ minOccurs="0"
531
+ maxOccurs="unbounded"/>
532
+ <xsd:element name="method"
533
+ type="javaee:methodType"
534
+ maxOccurs="unbounded"/>
535
+ <xsd:element name="trans-attribute"
536
+ type="javaee:trans-attributeType"/>
537
+ </xsd:sequence>
538
+ <xsd:attribute name="id" type="xsd:ID"/>
539
+ </xsd:complexType>
540
+
541
+ <!-- **************************************************** -->
542
+
543
+ <xsd:complexType name="ejb-classType">
544
+ <xsd:annotation>
545
+ <xsd:documentation>
546
+ <![CDATA[
547
+
548
+ The ejb-classType contains the fully-qualified name of the
549
+ enterprise bean's class. It is used by ejb-class elements.
550
+
551
+ Example:
552
+
553
+ <ejb-class>com.wombat.empl.EmployeeServiceBean</ejb-class>
554
+
555
+ ]]>
556
+ </xsd:documentation>
557
+ </xsd:annotation>
558
+ <xsd:simpleContent>
559
+ <xsd:restriction base="javaee:fully-qualified-classType"/>
560
+ </xsd:simpleContent>
561
+ </xsd:complexType>
562
+
563
+ <!-- **************************************************** -->
564
+
565
+ <xsd:complexType name="ejb-jarType">
566
+ <xsd:annotation>
567
+ <xsd:documentation>
568
+
569
+ The ejb-jarType defines the root element of the EJB
570
+ deployment descriptor. It contains
571
+
572
+ - an optional description of the ejb-jar file
573
+ - an optional display name
574
+ - an optional icon that contains a small and a large
575
+ icon file name
576
+ - structural information about all included
577
+ enterprise beans that is not specified through
578
+ annotations
579
+ - structural information about interceptor classes
580
+ - a descriptor for container managed relationships,
581
+ if any.
582
+ - an optional application-assembly descriptor
583
+ - an optional name of an ejb-client-jar file for the
584
+ ejb-jar.
585
+
586
+ </xsd:documentation>
587
+ </xsd:annotation>
588
+
589
+ <xsd:sequence>
590
+ <xsd:group ref="javaee:descriptionGroup"/>
591
+ <xsd:element name="enterprise-beans"
592
+ type="javaee:enterprise-beansType"
593
+ minOccurs="0"/>
594
+ <xsd:element name="interceptors"
595
+ type="javaee:interceptorsType"
596
+ minOccurs="0"/>
597
+ <xsd:element name="relationships"
598
+ type="javaee:relationshipsType"
599
+ minOccurs="0">
600
+ <xsd:unique name="relationship-name-uniqueness">
601
+ <xsd:annotation>
602
+ <xsd:documentation>
603
+
604
+ The ejb-relation-name contains the name of a
605
+ relation. The name must be unique within
606
+ relationships.
607
+
608
+ </xsd:documentation>
609
+ </xsd:annotation>
610
+ <xsd:selector xpath="javaee:ejb-relation"/>
611
+ <xsd:field xpath="javaee:ejb-relation-name"/>
612
+ </xsd:unique>
613
+ </xsd:element>
614
+ <xsd:element name="assembly-descriptor"
615
+ type="javaee:assembly-descriptorType"
616
+ minOccurs="0">
617
+ <xsd:annotation>
618
+ <xsd:documentation>
619
+
620
+ Providing an assembly-descriptor in the deployment
621
+ descriptor is optional for the ejb-jar file
622
+ producer.
623
+
624
+ </xsd:documentation>
625
+ </xsd:annotation>
626
+ </xsd:element>
627
+ <xsd:element name="ejb-client-jar"
628
+ type="javaee:pathType"
629
+ minOccurs="0">
630
+ <xsd:annotation>
631
+ <xsd:documentation>
632
+ <![CDATA[
633
+
634
+ The optional ejb-client-jar element specifies a JAR
635
+ file that contains the class files necessary for a
636
+ client program to access the
637
+ enterprise beans in the ejb-jar file.
638
+
639
+ Example:
640
+
641
+ <ejb-client-jar>employee_service_client.jar
642
+ </ejb-client-jar>
643
+
644
+ ]]>
645
+ </xsd:documentation>
646
+ </xsd:annotation>
647
+ </xsd:element>
648
+ </xsd:sequence>
649
+ <xsd:attribute name="version"
650
+ type="javaee:dewey-versionType"
651
+ fixed="3.0"
652
+ use="required">
653
+ <xsd:annotation>
654
+ <xsd:documentation>
655
+
656
+ The version specifies the version of the
657
+ EJB specification that the instance document must
658
+ comply with. This information enables deployment tools
659
+ to validate a particular EJB Deployment
660
+ Descriptor with respect to a specific version of the EJB
661
+ schema.
662
+
663
+ </xsd:documentation>
664
+ </xsd:annotation>
665
+ </xsd:attribute>
666
+ <xsd:attribute name="metadata-complete" type="xsd:boolean">
667
+ <xsd:annotation>
668
+ <xsd:documentation>
669
+
670
+ The metadata-complete attribute defines whether this
671
+ deployment descriptor and other related deployment
672
+ descriptors for this module (e.g., web service
673
+ descriptors) are complete, or whether the class
674
+ files available to this module and packaged with
675
+ this application should be examined for annotations
676
+ that specify deployment information.
677
+
678
+ If metadata-complete is set to "true", the deployment
679
+ tool must ignore any annotations that specify deployment
680
+ information, which might be present in the class files
681
+ of the application.
682
+
683
+ If metadata-complete is not specified or is set to
684
+ "false", the deployment tool must examine the class
685
+ files of the application for annotations, as
686
+ specified by the specifications.
687
+
688
+ </xsd:documentation>
689
+ </xsd:annotation>
690
+
691
+ </xsd:attribute>
692
+
693
+ <xsd:attribute name="id" type="xsd:ID"/>
694
+ </xsd:complexType>
695
+
696
+ <!-- **************************************************** -->
697
+
698
+ <xsd:complexType name="ejb-nameType">
699
+ <xsd:annotation>
700
+ <xsd:documentation>
701
+ <![CDATA[
702
+
703
+ The ejb-nameType specifies an enterprise bean's name. It is
704
+ used by ejb-name elements. This name is assigned by the
705
+ ejb-jar file producer to name the enterprise bean in the
706
+ ejb-jar file's deployment descriptor. The name must be
707
+ unique among the names of the enterprise beans in the same
708
+ ejb-jar file.
709
+
710
+ There is no architected relationship between the used
711
+ ejb-name in the deployment descriptor and the JNDI name that
712
+ the Deployer will assign to the enterprise bean's home.
713
+
714
+ The name for an entity bean must conform to the lexical
715
+ rules for an NMTOKEN.
716
+
717
+ Example:
718
+
719
+ <ejb-name>EmployeeService</ejb-name>
720
+
721
+ ]]>
722
+ </xsd:documentation>
723
+ </xsd:annotation>
724
+ <xsd:simpleContent>
725
+ <xsd:restriction base="javaee:xsdNMTOKENType"/>
726
+ </xsd:simpleContent>
727
+ </xsd:complexType>
728
+
729
+ <!-- **************************************************** -->
730
+
731
+ <xsd:complexType name="ejb-relationType">
732
+ <xsd:annotation>
733
+ <xsd:documentation>
734
+
735
+ The ejb-relationType describes a relationship between two
736
+ entity beans with container-managed persistence. It is used
737
+ by ejb-relation elements. It contains a description; an
738
+ optional ejb-relation-name element; and exactly two
739
+ relationship role declarations, defined by the
740
+ ejb-relationship-role elements. The name of the
741
+ relationship, if specified, is unique within the ejb-jar
742
+ file.
743
+
744
+ </xsd:documentation>
745
+ </xsd:annotation>
746
+
747
+ <xsd:sequence>
748
+ <xsd:element name="description"
749
+ type="javaee:descriptionType"
750
+ minOccurs="0"
751
+ maxOccurs="unbounded"/>
752
+ <xsd:element name="ejb-relation-name"
753
+ type="javaee:string"
754
+ minOccurs="0">
755
+ <xsd:annotation>
756
+ <xsd:documentation>
757
+
758
+ The ejb-relation-name element provides a unique name
759
+ within the ejb-jar file for a relationship.
760
+
761
+ </xsd:documentation>
762
+ </xsd:annotation>
763
+ </xsd:element>
764
+ <xsd:element name="ejb-relationship-role"
765
+ type="javaee:ejb-relationship-roleType"/>
766
+ <xsd:element name="ejb-relationship-role"
767
+ type="javaee:ejb-relationship-roleType"/>
768
+ </xsd:sequence>
769
+ <xsd:attribute name="id" type="xsd:ID"/>
770
+ </xsd:complexType>
771
+
772
+ <!-- **************************************************** -->
773
+
774
+ <xsd:complexType name="ejb-relationship-roleType">
775
+ <xsd:annotation>
776
+ <xsd:documentation>
777
+ <![CDATA[
778
+
779
+ The ejb-relationship-roleType describes a role within a
780
+ relationship. There are two roles in each relationship.
781
+
782
+ The ejb-relationship-roleType contains an optional
783
+ description; an optional name for the relationship role; a
784
+ specification of the multiplicity of the role; an optional
785
+ specification of cascade-delete functionality for the role;
786
+ the role source; and a declaration of the cmr-field, if any,
787
+ by means of which the other side of the relationship is
788
+ accessed from the perspective of the role source.
789
+
790
+ The multiplicity and role-source element are mandatory.
791
+
792
+ The relationship-role-source element designates an entity
793
+ bean by means of an ejb-name element. For bidirectional
794
+ relationships, both roles of a relationship must declare a
795
+ relationship-role-source element that specifies a cmr-field
796
+ in terms of which the relationship is accessed. The lack of
797
+ a cmr-field element in an ejb-relationship-role specifies
798
+ that the relationship is unidirectional in navigability and
799
+ the entity bean that participates in the relationship is
800
+ "not aware" of the relationship.
801
+
802
+ Example:
803
+
804
+ <ejb-relation>
805
+ <ejb-relation-name>Product-LineItem</ejb-relation-name>
806
+ <ejb-relationship-role>
807
+ <ejb-relationship-role-name>product-has-lineitems
808
+ </ejb-relationship-role-name>
809
+ <multiplicity>One</multiplicity>
810
+ <relationship-role-source>
811
+ <ejb-name>ProductEJB</ejb-name>
812
+ </relationship-role-source>
813
+ </ejb-relationship-role>
814
+ </ejb-relation>
815
+
816
+ ]]>
817
+ </xsd:documentation>
818
+ </xsd:annotation>
819
+
820
+ <xsd:sequence>
821
+ <xsd:element name="description"
822
+ type="javaee:descriptionType"
823
+ minOccurs="0"
824
+ maxOccurs="unbounded"/>
825
+ <xsd:element name="ejb-relationship-role-name"
826
+ type="javaee:string"
827
+ minOccurs="0">
828
+ <xsd:annotation>
829
+ <xsd:documentation>
830
+
831
+ The ejb-relationship-role-name element defines a
832
+ name for a role that is unique within an
833
+ ejb-relation. Different relationships can use the
834
+ same name for a role.
835
+
836
+ </xsd:documentation>
837
+ </xsd:annotation>
838
+ </xsd:element>
839
+ <xsd:element name="multiplicity"
840
+ type="javaee:multiplicityType"/>
841
+ <xsd:element name="cascade-delete"
842
+ type="javaee:emptyType"
843
+ minOccurs="0">
844
+ <xsd:annotation>
845
+ <xsd:documentation>
846
+
847
+ The cascade-delete element specifies that, within a
848
+ particular relationship, the lifetime of one or more
849
+ entity beans is dependent upon the lifetime of
850
+ another entity bean. The cascade-delete element can
851
+ only be specified for an ejb-relationship-role
852
+ element contained in an ejb-relation element in
853
+ which the other ejb-relationship-role
854
+ element specifies a multiplicity of One.
855
+
856
+ </xsd:documentation>
857
+ </xsd:annotation>
858
+ </xsd:element>
859
+ <xsd:element name="relationship-role-source"
860
+ type="javaee:relationship-role-sourceType"/>
861
+ <xsd:element name="cmr-field"
862
+ type="javaee:cmr-fieldType"
863
+ minOccurs="0"/>
864
+ </xsd:sequence>
865
+ <xsd:attribute name="id" type="xsd:ID"/>
866
+ </xsd:complexType>
867
+
868
+ <!-- **************************************************** -->
869
+
870
+ <xsd:complexType name="enterprise-beansType">
871
+ <xsd:annotation>
872
+ <xsd:documentation>
873
+
874
+ The enterprise-beansType declares one or more enterprise
875
+ beans. Each bean can be a session, entity or message-driven
876
+ bean.
877
+
878
+ </xsd:documentation>
879
+ </xsd:annotation>
880
+
881
+ <xsd:choice maxOccurs="unbounded">
882
+ <xsd:element name="session"
883
+ type="javaee:session-beanType">
884
+ <xsd:unique name="session-ejb-local-ref-name-uniqueness">
885
+ <xsd:annotation>
886
+ <xsd:documentation>
887
+
888
+ The ejb-ref-name element contains the name of
889
+ an EJB reference. The EJB reference is an entry in
890
+ the component's environment and is relative to the
891
+ java:comp/env context. The name must be unique within
892
+ the component.
893
+
894
+ It is recommended that name be prefixed with "ejb/".
895
+
896
+ </xsd:documentation>
897
+ </xsd:annotation>
898
+ <xsd:selector xpath="javaee:ejb-local-ref"/>
899
+ <xsd:field xpath="javaee:ejb-ref-name"/>
900
+ </xsd:unique>
901
+
902
+ <xsd:unique name="session-ejb-ref-name-uniqueness">
903
+ <xsd:annotation>
904
+ <xsd:documentation>
905
+
906
+ The ejb-ref-name element contains the name of an EJB
907
+ reference. The EJB reference is an entry in the
908
+ component's environment and is relative to the
909
+ java:comp/env context. The name must be unique
910
+ within the component.
911
+
912
+ It is recommended that name is prefixed with "ejb/".
913
+
914
+ </xsd:documentation>
915
+ </xsd:annotation>
916
+ <xsd:selector xpath="javaee:ejb-ref"/>
917
+ <xsd:field xpath="javaee:ejb-ref-name"/>
918
+ </xsd:unique>
919
+
920
+ <xsd:unique name="session-resource-env-ref-uniqueness">
921
+ <xsd:annotation>
922
+ <xsd:documentation>
923
+
924
+ The resource-env-ref-name element specifies the name
925
+ of a resource environment reference; its value is
926
+ the environment entry name used in the component
927
+ code. The name is a JNDI name relative to the
928
+ java:comp/env context and must be unique within an
929
+ component.
930
+
931
+ </xsd:documentation>
932
+ </xsd:annotation>
933
+ <xsd:selector xpath="javaee:resource-env-ref"/>
934
+ <xsd:field xpath="javaee:resource-env-ref-name"/>
935
+ </xsd:unique>
936
+
937
+ <xsd:unique name="session-message-destination-ref-uniqueness">
938
+ <xsd:annotation>
939
+ <xsd:documentation>
940
+
941
+ The message-destination-ref-name element specifies the name
942
+ of a message destination reference; its value is
943
+ the message destination reference name used in the component
944
+ code. The name is a JNDI name relative to the
945
+ java:comp/env context and must be unique within an
946
+ component.
947
+
948
+ </xsd:documentation>
949
+ </xsd:annotation>
950
+ <xsd:selector xpath="javaee:message-destination-ref"/>
951
+ <xsd:field xpath="javaee:message-destination-ref-name"/>
952
+ </xsd:unique>
953
+
954
+ <xsd:unique name="session-res-ref-name-uniqueness">
955
+ <xsd:annotation>
956
+ <xsd:documentation>
957
+
958
+ The res-ref-name element specifies the name of a
959
+ resource manager connection factory reference. The name
960
+ is a JNDI name relative to the java:comp/env context.
961
+ The name must be unique within an component.
962
+
963
+ </xsd:documentation>
964
+ </xsd:annotation>
965
+ <xsd:selector xpath="javaee:resource-ref"/>
966
+ <xsd:field xpath="javaee:res-ref-name"/>
967
+ </xsd:unique>
968
+
969
+ <xsd:unique name="session-env-entry-name-uniqueness">
970
+ <xsd:annotation>
971
+ <xsd:documentation>
972
+
973
+ The env-entry-name element contains the name of a
974
+ component's environment entry. The name is a JNDI
975
+ name relative to the java:comp/env context. The
976
+ name must be unique within an component.
977
+
978
+ </xsd:documentation>
979
+ </xsd:annotation>
980
+ <xsd:selector xpath="javaee:env-entry"/>
981
+ <xsd:field xpath="javaee:env-entry-name"/>
982
+ </xsd:unique>
983
+ </xsd:element>
984
+
985
+ <xsd:element name="entity"
986
+ type="javaee:entity-beanType">
987
+ <xsd:unique name="entity-ejb-local-ref-name-uniqueness">
988
+ <xsd:annotation>
989
+ <xsd:documentation>
990
+
991
+ The ejb-ref-name element contains the name of
992
+ an EJB reference. The EJB reference is an entry in
993
+ the component's environment and is relative to the
994
+ java:comp/env context. The name must be unique within
995
+ the component.
996
+
997
+ It is recommended that name be prefixed with "ejb/".
998
+
999
+ </xsd:documentation>
1000
+ </xsd:annotation>
1001
+ <xsd:selector xpath="javaee:ejb-local-ref"/>
1002
+ <xsd:field xpath="javaee:ejb-ref-name"/>
1003
+ </xsd:unique>
1004
+
1005
+ <xsd:unique name="entity-ejb-ref-name-uniqueness">
1006
+ <xsd:annotation>
1007
+ <xsd:documentation>
1008
+
1009
+ The ejb-ref-name element contains the name of an EJB
1010
+ reference. The EJB reference is an entry in the
1011
+ component's environment and is relative to the
1012
+ java:comp/env context. The name must be unique
1013
+ within the component.
1014
+
1015
+ It is recommended that name is prefixed with "ejb/".
1016
+
1017
+ </xsd:documentation>
1018
+ </xsd:annotation>
1019
+ <xsd:selector xpath="javaee:ejb-ref"/>
1020
+ <xsd:field xpath="javaee:ejb-ref-name"/>
1021
+ </xsd:unique>
1022
+
1023
+ <xsd:unique name="entity-resource-env-ref-uniqueness">
1024
+ <xsd:annotation>
1025
+ <xsd:documentation>
1026
+
1027
+ The resource-env-ref-name element specifies the name
1028
+ of a resource environment reference; its value is
1029
+ the environment entry name used in the component
1030
+ code. The name is a JNDI name relative to the
1031
+ java:comp/env context and must be unique within an
1032
+ component.
1033
+
1034
+ </xsd:documentation>
1035
+ </xsd:annotation>
1036
+ <xsd:selector xpath="javaee:resource-env-ref"/>
1037
+ <xsd:field xpath="javaee:resource-env-ref-name"/>
1038
+ </xsd:unique>
1039
+
1040
+ <xsd:unique name="entity-message-destination-ref-uniqueness">
1041
+ <xsd:annotation>
1042
+ <xsd:documentation>
1043
+
1044
+ The message-destination-ref-name element specifies the name
1045
+ of a message destination reference; its value is
1046
+ the message destination reference name used in the component
1047
+ code. The name is a JNDI name relative to the
1048
+ java:comp/env context and must be unique within an
1049
+ component.
1050
+
1051
+ </xsd:documentation>
1052
+ </xsd:annotation>
1053
+ <xsd:selector xpath="javaee:message-destination-ref"/>
1054
+ <xsd:field xpath="javaee:message-destination-ref-name"/>
1055
+ </xsd:unique>
1056
+
1057
+ <xsd:unique name="entity-res-ref-name-uniqueness">
1058
+ <xsd:annotation>
1059
+ <xsd:documentation>
1060
+
1061
+ The res-ref-name element specifies the name of a
1062
+ resource manager connection factory reference. The name
1063
+ is a JNDI name relative to the java:comp/env context.
1064
+ The name must be unique within an component.
1065
+
1066
+ </xsd:documentation>
1067
+ </xsd:annotation>
1068
+ <xsd:selector xpath="javaee:resource-ref"/>
1069
+ <xsd:field xpath="javaee:res-ref-name"/>
1070
+ </xsd:unique>
1071
+
1072
+ <xsd:unique name="entity-env-entry-name-uniqueness">
1073
+ <xsd:annotation>
1074
+ <xsd:documentation>
1075
+
1076
+ The env-entry-name element contains the name of a
1077
+ component's environment entry. The name is a JNDI
1078
+ name relative to the java:comp/env context. The
1079
+ name must be unique within an component.
1080
+
1081
+ </xsd:documentation>
1082
+ </xsd:annotation>
1083
+ <xsd:selector xpath="javaee:env-entry"/>
1084
+ <xsd:field xpath="javaee:env-entry-name"/>
1085
+ </xsd:unique>
1086
+ </xsd:element>
1087
+
1088
+ <xsd:element name="message-driven"
1089
+ type="javaee:message-driven-beanType">
1090
+ <xsd:unique name="messaged-ejb-local-ref-name-uniqueness">
1091
+ <xsd:annotation>
1092
+ <xsd:documentation>
1093
+
1094
+ The ejb-ref-name element contains the name of
1095
+ an EJB reference. The EJB reference is an entry in
1096
+ the component's environment and is relative to the
1097
+ java:comp/env context. The name must be unique within
1098
+ the component.
1099
+
1100
+ It is recommended that name be prefixed with "ejb/".
1101
+
1102
+ </xsd:documentation>
1103
+ </xsd:annotation>
1104
+ <xsd:selector xpath="javaee:ejb-local-ref"/>
1105
+ <xsd:field xpath="javaee:ejb-ref-name"/>
1106
+ </xsd:unique>
1107
+
1108
+ <xsd:unique name="messaged-ejb-ref-name-uniqueness">
1109
+ <xsd:annotation>
1110
+ <xsd:documentation>
1111
+
1112
+ The ejb-ref-name element contains the name of an EJB
1113
+ reference. The EJB reference is an entry in the
1114
+ component's environment and is relative to the
1115
+ java:comp/env context. The name must be unique
1116
+ within the component.
1117
+
1118
+ It is recommended that name is prefixed with "ejb/".
1119
+
1120
+ </xsd:documentation>
1121
+ </xsd:annotation>
1122
+ <xsd:selector xpath="javaee:ejb-ref"/>
1123
+ <xsd:field xpath="javaee:ejb-ref-name"/>
1124
+ </xsd:unique>
1125
+
1126
+ <xsd:unique name="messaged-resource-env-ref-uniqueness">
1127
+ <xsd:annotation>
1128
+ <xsd:documentation>
1129
+
1130
+ The resource-env-ref-name element specifies the name
1131
+ of a resource environment reference; its value is
1132
+ the environment entry name used in the component
1133
+ code. The name is a JNDI name relative to the
1134
+ java:comp/env context and must be unique within an
1135
+ component.
1136
+
1137
+ </xsd:documentation>
1138
+ </xsd:annotation>
1139
+ <xsd:selector xpath="javaee:resource-env-ref"/>
1140
+ <xsd:field xpath="javaee:resource-env-ref-name"/>
1141
+ </xsd:unique>
1142
+
1143
+ <xsd:unique name="messaged-message-destination-ref-uniqueness">
1144
+ <xsd:annotation>
1145
+ <xsd:documentation>
1146
+
1147
+ The message-destination-ref-name element specifies the name
1148
+ of a message destination reference; its value is
1149
+ the message destination reference name used in the component
1150
+ code. The name is a JNDI name relative to the
1151
+ java:comp/env context and must be unique within an
1152
+ component.
1153
+
1154
+ </xsd:documentation>
1155
+ </xsd:annotation>
1156
+ <xsd:selector xpath="javaee:message-destination-ref"/>
1157
+ <xsd:field xpath="javaee:message-destination-ref-name"/>
1158
+ </xsd:unique>
1159
+
1160
+ <xsd:unique name="messaged-res-ref-name-uniqueness">
1161
+ <xsd:annotation>
1162
+ <xsd:documentation>
1163
+
1164
+ The res-ref-name element specifies the name of a
1165
+ resource manager connection factory reference. The name
1166
+ is a JNDI name relative to the java:comp/env context.
1167
+ The name must be unique within an component.
1168
+
1169
+ </xsd:documentation>
1170
+ </xsd:annotation>
1171
+ <xsd:selector xpath="javaee:resource-ref"/>
1172
+ <xsd:field xpath="javaee:res-ref-name"/>
1173
+ </xsd:unique>
1174
+
1175
+ <xsd:unique name="messaged-env-entry-name-uniqueness">
1176
+ <xsd:annotation>
1177
+ <xsd:documentation>
1178
+
1179
+ The env-entry-name element contains the name of a
1180
+ component's environment entry. The name is a JNDI
1181
+ name relative to the java:comp/env context. The
1182
+ name must be unique within an component.
1183
+
1184
+ </xsd:documentation>
1185
+ </xsd:annotation>
1186
+ <xsd:selector xpath="javaee:env-entry"/>
1187
+ <xsd:field xpath="javaee:env-entry-name"/>
1188
+ </xsd:unique>
1189
+ </xsd:element>
1190
+
1191
+ </xsd:choice>
1192
+ <xsd:attribute name="id" type="xsd:ID"/>
1193
+ </xsd:complexType>
1194
+
1195
+ <!-- **************************************************** -->
1196
+
1197
+ <xsd:complexType name="entity-beanType">
1198
+ <xsd:annotation>
1199
+ <xsd:documentation>
1200
+
1201
+ The entity-beanType declares an entity bean. The declaration
1202
+ consists of:
1203
+
1204
+ - an optional description
1205
+ - an optional display name
1206
+ - an optional icon element that contains a small and a large
1207
+ icon file name
1208
+ - a unique name assigned to the enterprise bean
1209
+ in the deployment descriptor
1210
+ - an optional mapped-name element that can be used to provide
1211
+ vendor-specific deployment information such as the physical
1212
+ jndi-name of the entity bean's remote home interface. This
1213
+ element is not required to be supported by all implementations.
1214
+ Any use of this element is non-portable.
1215
+ - the names of the entity bean's remote home
1216
+ and remote interfaces, if any
1217
+ - the names of the entity bean's local home and local
1218
+ interfaces, if any
1219
+ - the entity bean's implementation class
1220
+ - the optional entity bean's persistence management type. If
1221
+ this element is not specified it is defaulted to Container.
1222
+ - the entity bean's primary key class name
1223
+ - an indication of the entity bean's reentrancy
1224
+ - an optional specification of the
1225
+ entity bean's cmp-version
1226
+ - an optional specification of the entity bean's
1227
+ abstract schema name
1228
+ - an optional list of container-managed fields
1229
+ - an optional specification of the primary key
1230
+ field
1231
+ - an optional declaration of the bean's environment
1232
+ entries
1233
+ - an optional declaration of the bean's EJB
1234
+ references
1235
+ - an optional declaration of the bean's local
1236
+ EJB references
1237
+ - an optional declaration of the bean's web
1238
+ service references
1239
+ - an optional declaration of the security role
1240
+ references
1241
+ - an optional declaration of the security identity
1242
+ to be used for the execution of the bean's methods
1243
+ - an optional declaration of the bean's
1244
+ resource manager connection factory references
1245
+ - an optional declaration of the bean's
1246
+ resource environment references
1247
+ - an optional declaration of the bean's message
1248
+ destination references
1249
+ - an optional set of query declarations
1250
+ for finder and select methods for an entity
1251
+ bean with cmp-version 2.x.
1252
+
1253
+ The optional abstract-schema-name element must be specified
1254
+ for an entity bean with container-managed persistence and
1255
+ cmp-version 2.x.
1256
+
1257
+ The optional primkey-field may be present in the descriptor
1258
+ if the entity's persistence-type is Container.
1259
+
1260
+ The optional cmp-version element may be present in the
1261
+ descriptor if the entity's persistence-type is Container. If
1262
+ the persistence-type is Container and the cmp-version
1263
+ element is not specified, its value defaults to 2.x.
1264
+
1265
+ The optional home and remote elements must be specified if
1266
+ the entity bean cmp-version is 1.x.
1267
+
1268
+ The optional home and remote elements must be specified if
1269
+ the entity bean has a remote home and remote interface.
1270
+
1271
+ The optional local-home and local elements must be specified
1272
+ if the entity bean has a local home and local interface.
1273
+
1274
+ Either both the local-home and the local elements or both
1275
+ the home and the remote elements must be specified.
1276
+
1277
+ The optional query elements must be present if the
1278
+ persistence-type is Container and the cmp-version is 2.x and
1279
+ query methods other than findByPrimaryKey have been defined
1280
+ for the entity bean.
1281
+
1282
+ The other elements that are optional are "optional" in the
1283
+ sense that they are omitted if the lists represented by them
1284
+ are empty.
1285
+
1286
+ At least one cmp-field element must be present in the
1287
+ descriptor if the entity's persistence-type is Container and
1288
+ the cmp-version is 1.x, and none must not be present if the
1289
+ entity's persistence-type is Bean.
1290
+
1291
+ </xsd:documentation>
1292
+ </xsd:annotation>
1293
+
1294
+ <xsd:sequence>
1295
+ <xsd:group ref="javaee:descriptionGroup"/>
1296
+ <xsd:element name="ejb-name"
1297
+ type="javaee:ejb-nameType"/>
1298
+ <xsd:element name="mapped-name"
1299
+ type="javaee:xsdStringType"
1300
+ minOccurs="0"/>
1301
+ <xsd:element name="home"
1302
+ type="javaee:homeType"
1303
+ minOccurs="0"/>
1304
+ <xsd:element name="remote"
1305
+ type="javaee:remoteType"
1306
+ minOccurs="0"/>
1307
+ <xsd:element name="local-home"
1308
+ type="javaee:local-homeType"
1309
+ minOccurs="0"/>
1310
+ <xsd:element name="local"
1311
+ type="javaee:localType"
1312
+ minOccurs="0"/>
1313
+ <xsd:element name="ejb-class"
1314
+ type="javaee:ejb-classType"/>
1315
+ <xsd:element name="persistence-type"
1316
+ type="javaee:persistence-typeType"/>
1317
+ <xsd:element name="prim-key-class"
1318
+ type="javaee:fully-qualified-classType">
1319
+ <xsd:annotation>
1320
+ <xsd:documentation>
1321
+
1322
+ The prim-key-class element contains the
1323
+ fully-qualified name of an
1324
+ entity bean's primary key class.
1325
+
1326
+ If the definition of the primary key class is
1327
+ deferred to deployment time, the prim-key-class
1328
+ element should specify java.lang.Object.
1329
+
1330
+ </xsd:documentation>
1331
+ </xsd:annotation>
1332
+ </xsd:element>
1333
+ <xsd:element name="reentrant"
1334
+ type="javaee:true-falseType">
1335
+ <xsd:annotation>
1336
+ <xsd:documentation>
1337
+
1338
+ The reentrant element specifies whether an entity
1339
+ bean is reentrant or not.
1340
+
1341
+ The reentrant element must be one of the two
1342
+ following: true or false
1343
+
1344
+ </xsd:documentation>
1345
+ </xsd:annotation>
1346
+ </xsd:element>
1347
+ <xsd:element name="cmp-version"
1348
+ type="javaee:cmp-versionType"
1349
+ minOccurs="0"/>
1350
+ <xsd:element name="abstract-schema-name"
1351
+ type="javaee:java-identifierType"
1352
+ minOccurs="0">
1353
+ <xsd:annotation>
1354
+ <xsd:documentation>
1355
+
1356
+ The abstract-schema-name element specifies the name
1357
+ of the abstract schema type of an entity bean with
1358
+ cmp-version 2.x. It is used in EJB QL queries.
1359
+
1360
+ For example, the abstract-schema-name for an entity
1361
+ bean whose local interface is
1362
+ com.acme.commerce.Order might be Order.
1363
+
1364
+ </xsd:documentation>
1365
+ </xsd:annotation>
1366
+ </xsd:element>
1367
+ <xsd:element name="cmp-field"
1368
+ type="javaee:cmp-fieldType"
1369
+ minOccurs="0"
1370
+ maxOccurs="unbounded"/>
1371
+ <xsd:element name="primkey-field"
1372
+ type="javaee:string"
1373
+ minOccurs="0">
1374
+ <xsd:annotation>
1375
+ <xsd:documentation>
1376
+
1377
+ The primkey-field element is used to specify the
1378
+ name of the primary key field for an entity with
1379
+ container-managed persistence.
1380
+
1381
+ The primkey-field must be one of the fields declared
1382
+ in the cmp-field element, and the type of the field
1383
+ must be the same as the primary key type.
1384
+
1385
+ The primkey-field element is not used if the primary
1386
+ key maps to multiple container-managed fields
1387
+ (i.e. the key is a compound key). In this case, the
1388
+ fields of the primary key class must be public, and
1389
+ their names must correspond to the field names of
1390
+ the entity bean class that comprise the key.
1391
+
1392
+ </xsd:documentation>
1393
+ </xsd:annotation>
1394
+ </xsd:element>
1395
+ <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
1396
+ <xsd:element name="security-role-ref"
1397
+ type="javaee:security-role-refType"
1398
+ minOccurs="0" maxOccurs="unbounded"/>
1399
+ <xsd:element name="security-identity"
1400
+ type="javaee:security-identityType"
1401
+ minOccurs="0"/>
1402
+ <xsd:element name="query"
1403
+ type="javaee:queryType"
1404
+ minOccurs="0" maxOccurs="unbounded"/>
1405
+ </xsd:sequence>
1406
+ <xsd:attribute name="id" type="xsd:ID"/>
1407
+ </xsd:complexType>
1408
+
1409
+ <!-- **************************************************** -->
1410
+
1411
+ <xsd:complexType name="exclude-listType">
1412
+ <xsd:annotation>
1413
+ <xsd:documentation>
1414
+
1415
+ The exclude-listType specifies one or more methods which
1416
+ the Assembler marks to be uncallable.
1417
+
1418
+ If the method permission relation contains methods that are
1419
+ in the exclude list, the Deployer should consider those
1420
+ methods to be uncallable.
1421
+
1422
+ </xsd:documentation>
1423
+ </xsd:annotation>
1424
+
1425
+ <xsd:sequence>
1426
+ <xsd:element name="description"
1427
+ type="javaee:descriptionType"
1428
+ minOccurs="0"
1429
+ maxOccurs="unbounded"/>
1430
+ <xsd:element name="method"
1431
+ type="javaee:methodType"
1432
+ maxOccurs="unbounded"/>
1433
+ </xsd:sequence>
1434
+ <xsd:attribute name="id" type="xsd:ID"/>
1435
+ </xsd:complexType>
1436
+
1437
+ <!-- **************************************************** -->
1438
+
1439
+ <xsd:complexType name="init-methodType">
1440
+ <xsd:sequence>
1441
+ <xsd:element name="create-method"
1442
+ type="javaee:named-methodType"/>
1443
+ <xsd:element name="bean-method"
1444
+ type="javaee:named-methodType"/>
1445
+ </xsd:sequence>
1446
+ <xsd:attribute name="id" type="xsd:ID"/>
1447
+ </xsd:complexType>
1448
+
1449
+ <!-- **************************************************** -->
1450
+
1451
+ <xsd:complexType name="interceptor-bindingType">
1452
+ <xsd:annotation>
1453
+ <xsd:documentation>
1454
+
1455
+ The interceptor-bindingType element describes the binding of
1456
+ interceptor classes to beans within the ejb-jar.
1457
+ It consists of :
1458
+
1459
+ - An optional description.
1460
+ - The name of an ejb within the ejb-jar or the wildcard value "*",
1461
+ which is used to define interceptors that are bound to all
1462
+ beans in the ejb-jar.
1463
+ - A list of interceptor classes that are bound to the contents of
1464
+ the ejb-name element or a specification of the total ordering
1465
+ over the interceptors defined for the given level and above.
1466
+ - An optional exclude-default-interceptors element. If set to true,
1467
+ specifies that default interceptors are not to be applied to
1468
+ a bean-class and/or business method.
1469
+ - An optional exclude-class-interceptors element. If set to true,
1470
+ specifies that class interceptors are not to be applied to
1471
+ a business method.
1472
+ - An optional set of method elements for describing the name/params
1473
+ of a method-level interceptor.
1474
+
1475
+ Interceptors bound to all classes using the wildcard syntax
1476
+ "*" are default interceptors for the components in the ejb-jar.
1477
+ In addition, interceptors may be bound at the level of the bean
1478
+ class (class-level interceptors) or business methods (method-level
1479
+ interceptors ).
1480
+
1481
+ The binding of interceptors to classes is additive. If interceptors
1482
+ are bound at the class-level and/or default-level as well as the
1483
+ method-level, both class-level and/or default-level as well as
1484
+ method-level will apply.
1485
+
1486
+ There are four possible styles of the interceptor element syntax :
1487
+
1488
+ 1.
1489
+ <interceptor-binding>
1490
+ <ejb-name>*</ejb-name>
1491
+ <interceptor-class>INTERCEPTOR</interceptor-class>
1492
+ </interceptor-binding>
1493
+
1494
+ Specifying the ejb-name as the wildcard value "*" designates
1495
+ default interceptors (interceptors that apply to all session and
1496
+ message-driven beans contained in the ejb-jar).
1497
+
1498
+ 2.
1499
+ <interceptor-binding>
1500
+ <ejb-name>EJBNAME</ejb-name>
1501
+ <interceptor-class>INTERCEPTOR</interceptor-class>
1502
+ </interceptor-binding>
1503
+
1504
+ This style is used to refer to interceptors associated with the
1505
+ specified enterprise bean(class-level interceptors).
1506
+
1507
+ 3.
1508
+ <interceptor-binding>
1509
+ <ejb-name>EJBNAME</ejb-name>
1510
+ <interceptor-class>INTERCEPTOR</interceptor-class>
1511
+ <method>
1512
+ <method-name>METHOD</method-name>
1513
+ </method>
1514
+ </interceptor-binding>
1515
+
1516
+ This style is used to associate a method-level interceptor with
1517
+ the specified enterprise bean. If there are multiple methods
1518
+ with the same overloaded name, the element of this style refers
1519
+ to all the methods with the overloaded name. Method-level
1520
+ interceptors can only be associated with business methods of the
1521
+ bean class. Note that the wildcard value "*" cannot be used
1522
+ to specify method-level interceptors.
1523
+
1524
+ 4.
1525
+ <interceptor-binding>
1526
+ <ejb-name>EJBNAME</ejb-name>
1527
+ <interceptor-class>INTERCEPTOR</interceptor-class>
1528
+ <method>
1529
+ <method-name>METHOD</method-name>
1530
+ <method-params>
1531
+ <method-param>PARAM-1</method-param>
1532
+ <method-param>PARAM-2</method-param>
1533
+ ...
1534
+ <method-param>PARAM-N</method-param>
1535
+ </method-params>
1536
+ </method>
1537
+ </interceptor-binding>
1538
+
1539
+ This style is used to associate a method-level interceptor with
1540
+ the specified method of the specified enterprise bean. This
1541
+ style is used to refer to a single method within a set of methods
1542
+ with an overloaded name. The values PARAM-1 through PARAM-N
1543
+ are the fully-qualified Java types of the method's input parameters
1544
+ (if the method has no input arguments, the method-params element
1545
+ contains no method-param elements). Arrays are specified by the
1546
+ array element's type, followed by one or more pair of square
1547
+ brackets (e.g. int[][]).
1548
+
1549
+ </xsd:documentation>
1550
+ </xsd:annotation>
1551
+ <xsd:sequence>
1552
+ <xsd:element name="description"
1553
+ type="javaee:descriptionType"
1554
+ minOccurs="0"
1555
+ maxOccurs="unbounded"/>
1556
+ <xsd:element name="ejb-name"
1557
+ type="javaee:string"/>
1558
+ <xsd:choice>
1559
+ <xsd:element name="interceptor-class"
1560
+ type="javaee:fully-qualified-classType"
1561
+ minOccurs="0"
1562
+ maxOccurs="unbounded"/>
1563
+ <xsd:element name="interceptor-order"
1564
+ type="javaee:interceptor-orderType"
1565
+ minOccurs="1"/>
1566
+ </xsd:choice>
1567
+ <xsd:element name="exclude-default-interceptors"
1568
+ type="javaee:true-falseType"
1569
+ minOccurs="0"/>
1570
+ <xsd:element name="exclude-class-interceptors"
1571
+ type="javaee:true-falseType"
1572
+ minOccurs="0"/>
1573
+ <xsd:element name="method"
1574
+ type="javaee:named-methodType"
1575
+ minOccurs="0"/>
1576
+ </xsd:sequence>
1577
+ <xsd:attribute name="id" type="xsd:ID"/>
1578
+ </xsd:complexType>
1579
+
1580
+ <!-- **************************************************** -->
1581
+
1582
+ <xsd:complexType name="interceptor-orderType">
1583
+ <xsd:annotation>
1584
+ <xsd:documentation>
1585
+ The interceptor-orderType element describes a total ordering
1586
+ of interceptor classes.
1587
+ </xsd:documentation>
1588
+ </xsd:annotation>
1589
+
1590
+ <xsd:sequence>
1591
+
1592
+ <xsd:element name="interceptor-class"
1593
+ type="javaee:fully-qualified-classType"
1594
+ minOccurs="1"
1595
+ maxOccurs="unbounded"/>
1596
+
1597
+ </xsd:sequence>
1598
+ <xsd:attribute name="id" type="xsd:ID"/>
1599
+ </xsd:complexType>
1600
+
1601
+ <!-- **************************************************** -->
1602
+
1603
+ <xsd:complexType name="interceptorType">
1604
+ <xsd:annotation>
1605
+ <xsd:documentation>
1606
+
1607
+ The interceptorType element declares information about a single
1608
+ interceptor class. It consists of :
1609
+
1610
+ - An optional description.
1611
+ - The fully-qualified name of the interceptor class.
1612
+ - An optional list of around invoke methods declared on the
1613
+ interceptor class and/or its super-classes.
1614
+ - An optional list environment dependencies for the interceptor
1615
+ class and/or its super-classes.
1616
+ - An optional list of post-activate methods declared on the
1617
+ interceptor class and/or its super-classes.
1618
+ - An optional list of pre-passivate methods declared on the
1619
+ interceptor class and/or its super-classes.
1620
+
1621
+ </xsd:documentation>
1622
+ </xsd:annotation>
1623
+ <xsd:sequence>
1624
+ <xsd:element name="description"
1625
+ type="javaee:descriptionType"
1626
+ minOccurs="0"
1627
+ maxOccurs="unbounded"/>
1628
+ <xsd:element name="interceptor-class"
1629
+ type="javaee:fully-qualified-classType"/>
1630
+ <xsd:element name="around-invoke"
1631
+ type="javaee:around-invokeType"
1632
+ minOccurs="0"
1633
+ maxOccurs="unbounded"/>
1634
+ <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
1635
+ <xsd:element name="post-activate"
1636
+ type="javaee:lifecycle-callbackType"
1637
+ minOccurs="0"
1638
+ maxOccurs="unbounded"/>
1639
+ <xsd:element name="pre-passivate"
1640
+ type="javaee:lifecycle-callbackType"
1641
+ minOccurs="0"
1642
+ maxOccurs="unbounded"/>
1643
+ </xsd:sequence>
1644
+ <xsd:attribute name="id" type="xsd:ID"/>
1645
+ </xsd:complexType>
1646
+
1647
+ <!-- **************************************************** -->
1648
+
1649
+ <xsd:complexType name="interceptorsType">
1650
+ <xsd:annotation>
1651
+ <xsd:documentation>
1652
+
1653
+ The interceptorsType element declares one or more interceptor
1654
+ classes used by components within this ejb-jar. The declaration
1655
+ consists of :
1656
+
1657
+ - An optional description.
1658
+ - One or more interceptor elements.
1659
+
1660
+ </xsd:documentation>
1661
+ </xsd:annotation>
1662
+ <xsd:sequence>
1663
+ <xsd:element name="description"
1664
+ type="javaee:descriptionType"
1665
+ minOccurs="0"
1666
+ maxOccurs="unbounded"/>
1667
+ <xsd:element name="interceptor"
1668
+ type="javaee:interceptorType"
1669
+ maxOccurs="unbounded"/>
1670
+ </xsd:sequence>
1671
+ <xsd:attribute name="id" type="xsd:ID"/>
1672
+ </xsd:complexType>
1673
+
1674
+ <!-- **************************************************** -->
1675
+
1676
+ <xsd:complexType name="message-driven-beanType">
1677
+ <xsd:annotation>
1678
+ <xsd:documentation>
1679
+
1680
+ The message-driven element declares a message-driven
1681
+ bean. The declaration consists of:
1682
+
1683
+ - an optional description
1684
+ - an optional display name
1685
+ - an optional icon element that contains a small and a large
1686
+ icon file name.
1687
+ - a name assigned to the enterprise bean in
1688
+ the deployment descriptor
1689
+ - an optional mapped-name element that can be used to provide
1690
+ vendor-specific deployment information such as the physical
1691
+ jndi-name of destination from which this message-driven bean
1692
+ should consume. This element is not required to be supported
1693
+ by all implementations. Any use of this element is non-portable.
1694
+ - the message-driven bean's implementation class
1695
+ - an optional declaration of the bean's messaging
1696
+ type
1697
+ - an optional declaration of the bean's timeout method.
1698
+ - the optional message-driven bean's transaction management
1699
+ type. If it is not defined, it is defaulted to Container.
1700
+ - an optional declaration of the bean's
1701
+ message-destination-type
1702
+ - an optional declaration of the bean's
1703
+ message-destination-link
1704
+ - an optional declaration of the message-driven bean's
1705
+ activation configuration properties
1706
+ - an optional list of the message-driven bean class and/or
1707
+ superclass around-invoke methods.
1708
+ - an optional declaration of the bean's environment
1709
+ entries
1710
+ - an optional declaration of the bean's EJB references
1711
+ - an optional declaration of the bean's local EJB
1712
+ references
1713
+ - an optional declaration of the bean's web service
1714
+ references
1715
+ - an optional declaration of the security
1716
+ identity to be used for the execution of the bean's
1717
+ methods
1718
+ - an optional declaration of the bean's
1719
+ resource manager connection factory
1720
+ references
1721
+ - an optional declaration of the bean's resource
1722
+ environment references.
1723
+ - an optional declaration of the bean's message
1724
+ destination references
1725
+
1726
+ </xsd:documentation>
1727
+ </xsd:annotation>
1728
+
1729
+ <xsd:sequence>
1730
+ <xsd:group ref="javaee:descriptionGroup"/>
1731
+ <xsd:element name="ejb-name"
1732
+ type="javaee:ejb-nameType"/>
1733
+ <xsd:element name="mapped-name"
1734
+ type="javaee:xsdStringType"
1735
+ minOccurs="0"/>
1736
+ <xsd:element name="ejb-class"
1737
+ type="javaee:ejb-classType"
1738
+ minOccurs="0">
1739
+ <xsd:annotation>
1740
+ <xsd:documentation>
1741
+
1742
+ The ejb-class element specifies the fully qualified name
1743
+ of the bean class for this ejb. It is required unless
1744
+ there is a component-defining annotation for the same
1745
+ ejb-name.
1746
+
1747
+ </xsd:documentation>
1748
+ </xsd:annotation>
1749
+ </xsd:element>
1750
+ <xsd:element name="messaging-type"
1751
+ type="javaee:fully-qualified-classType"
1752
+ minOccurs="0">
1753
+ <xsd:annotation>
1754
+ <xsd:documentation>
1755
+
1756
+ The messaging-type element specifies the message
1757
+ listener interface of the message-driven bean.
1758
+
1759
+ </xsd:documentation>
1760
+ </xsd:annotation>
1761
+ </xsd:element>
1762
+ <xsd:element name="timeout-method"
1763
+ type="javaee:named-methodType"
1764
+ minOccurs="0"/>
1765
+ <xsd:element name="transaction-type"
1766
+ type="javaee:transaction-typeType"
1767
+ minOccurs="0"/>
1768
+ <xsd:element name="message-destination-type"
1769
+ type="javaee:message-destination-typeType"
1770
+ minOccurs="0"/>
1771
+ <xsd:element name="message-destination-link"
1772
+ type="javaee:message-destination-linkType"
1773
+ minOccurs="0"/>
1774
+ <xsd:element name="activation-config"
1775
+ type="javaee:activation-configType"
1776
+ minOccurs="0"/>
1777
+ <xsd:element name="around-invoke"
1778
+ type="javaee:around-invokeType"
1779
+ minOccurs="0"
1780
+ maxOccurs="unbounded"/>
1781
+ <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
1782
+ <xsd:element name="security-identity"
1783
+ type="javaee:security-identityType"
1784
+ minOccurs="0"/>
1785
+ </xsd:sequence>
1786
+ <xsd:attribute name="id" type="xsd:ID"/>
1787
+ </xsd:complexType>
1788
+
1789
+ <!-- **************************************************** -->
1790
+
1791
+ <xsd:complexType name="method-intfType">
1792
+
1793
+ <xsd:annotation>
1794
+ <xsd:documentation>
1795
+
1796
+ The method-intf element allows a method element to
1797
+ differentiate between the methods with the same name and
1798
+ signature that are multiply defined across the home and
1799
+ component interfaces (e.g, in both an enterprise bean's
1800
+ remote and local interfaces or in both an enterprise bean's
1801
+ home and remote interfaces, etc.); the component and web
1802
+ service endpoint interfaces, and so on. The Local applies to
1803
+ both local component interface and local business interface.
1804
+ Similarly, Remote applies to both remote component interface
1805
+ and the remote business interface.
1806
+
1807
+ The method-intf element must be one of the following:
1808
+
1809
+ Home
1810
+ Remote
1811
+ LocalHome
1812
+ Local
1813
+ ServiceEndpoint
1814
+
1815
+ </xsd:documentation>
1816
+ </xsd:annotation>
1817
+ <xsd:simpleContent>
1818
+ <xsd:restriction base="javaee:string">
1819
+ <xsd:enumeration value="Home"/>
1820
+ <xsd:enumeration value="Remote"/>
1821
+ <xsd:enumeration value="LocalHome"/>
1822
+ <xsd:enumeration value="Local"/>
1823
+ <xsd:enumeration value="ServiceEndpoint"/>
1824
+ </xsd:restriction>
1825
+ </xsd:simpleContent>
1826
+ </xsd:complexType>
1827
+
1828
+ <!-- **************************************************** -->
1829
+
1830
+ <xsd:complexType name="method-nameType">
1831
+ <xsd:annotation>
1832
+ <xsd:documentation>
1833
+
1834
+ The method-nameType contains a name of an enterprise
1835
+ bean method or the asterisk (*) character. The asterisk is
1836
+ used when the element denotes all the methods of an
1837
+ enterprise bean's client view interfaces.
1838
+
1839
+ </xsd:documentation>
1840
+ </xsd:annotation>
1841
+ <xsd:simpleContent>
1842
+ <xsd:restriction base="javaee:string"/>
1843
+ </xsd:simpleContent>
1844
+ </xsd:complexType>
1845
+
1846
+ <!-- **************************************************** -->
1847
+
1848
+ <xsd:complexType name="method-paramsType">
1849
+ <xsd:annotation>
1850
+ <xsd:documentation>
1851
+
1852
+ The method-paramsType defines a list of the
1853
+ fully-qualified Java type names of the method parameters.
1854
+
1855
+ </xsd:documentation>
1856
+ </xsd:annotation>
1857
+
1858
+ <xsd:sequence>
1859
+ <xsd:element name="method-param"
1860
+ type="javaee:java-typeType"
1861
+ minOccurs="0"
1862
+ maxOccurs="unbounded">
1863
+ <xsd:annotation>
1864
+ <xsd:documentation>
1865
+
1866
+ The method-param element contains a primitive
1867
+ or a fully-qualified Java type name of a method
1868
+ parameter.
1869
+
1870
+ </xsd:documentation>
1871
+ </xsd:annotation>
1872
+ </xsd:element>
1873
+ </xsd:sequence>
1874
+ <xsd:attribute name="id" type="xsd:ID"/>
1875
+ </xsd:complexType>
1876
+
1877
+ <!-- **************************************************** -->
1878
+
1879
+ <xsd:complexType name="method-permissionType">
1880
+ <xsd:annotation>
1881
+ <xsd:documentation>
1882
+
1883
+ The method-permissionType specifies that one or more
1884
+ security roles are allowed to invoke one or more enterprise
1885
+ bean methods. The method-permissionType consists of an
1886
+ optional description, a list of security role names or an
1887
+ indicator to state that the method is unchecked for
1888
+ authorization, and a list of method elements.
1889
+
1890
+ The security roles used in the method-permissionType
1891
+ must be defined in the security-role elements of the
1892
+ deployment descriptor, and the methods must be methods
1893
+ defined in the enterprise bean's business, home, component
1894
+ and/or web service endpoint interfaces.
1895
+
1896
+ </xsd:documentation>
1897
+ </xsd:annotation>
1898
+
1899
+ <xsd:sequence>
1900
+ <xsd:element name="description"
1901
+ type="javaee:descriptionType"
1902
+ minOccurs="0"
1903
+ maxOccurs="unbounded"/>
1904
+ <xsd:choice>
1905
+ <xsd:element name="role-name"
1906
+ type="javaee:role-nameType"
1907
+ maxOccurs="unbounded"/>
1908
+ <xsd:element name="unchecked"
1909
+ type="javaee:emptyType">
1910
+ <xsd:annotation>
1911
+ <xsd:documentation>
1912
+
1913
+ The unchecked element specifies that a method is
1914
+ not checked for authorization by the container
1915
+ prior to invocation of the method.
1916
+
1917
+ </xsd:documentation>
1918
+ </xsd:annotation>
1919
+ </xsd:element>
1920
+ </xsd:choice>
1921
+ <xsd:element name="method"
1922
+ type="javaee:methodType"
1923
+ maxOccurs="unbounded"/>
1924
+ </xsd:sequence>
1925
+ <xsd:attribute name="id" type="xsd:ID"/>
1926
+ </xsd:complexType>
1927
+
1928
+ <!-- **************************************************** -->
1929
+
1930
+ <xsd:complexType name="methodType">
1931
+ <xsd:annotation>
1932
+ <xsd:documentation>
1933
+ <![CDATA[
1934
+
1935
+ The methodType is used to denote a method of an enterprise
1936
+ bean's business, home, component, and/or web service endpoint
1937
+ interface, or, in the case of a message-driven bean, the
1938
+ bean's message listener method, or a set of such
1939
+ methods. The ejb-name element must be the name of one of the
1940
+ enterprise beans declared in the deployment descriptor; the
1941
+ optional method-intf element allows to distinguish between a
1942
+ method with the same signature that is multiply defined
1943
+ across the business, home, component, and/or web service
1944
+ endpoint nterfaces; the method-name element specifies the
1945
+ method name; and the optional method-params elements identify
1946
+ a single method among multiple methods with an overloaded
1947
+ method name.
1948
+
1949
+ There are three possible styles of using methodType element
1950
+ within a method element:
1951
+
1952
+ 1.
1953
+ <method>
1954
+ <ejb-name>EJBNAME</ejb-name>
1955
+ <method-name>*</method-name>
1956
+ </method>
1957
+
1958
+ This style is used to refer to all the methods of the
1959
+ specified enterprise bean's business, home, component,
1960
+ and/or web service endpoint interfaces.
1961
+
1962
+ 2.
1963
+ <method>
1964
+ <ejb-name>EJBNAME</ejb-name>
1965
+ <method-name>METHOD</method-name>
1966
+ </method>
1967
+
1968
+ This style is used to refer to the specified method of
1969
+ the specified enterprise bean. If there are multiple
1970
+ methods with the same overloaded name, the element of
1971
+ this style refers to all the methods with the overloaded
1972
+ name.
1973
+
1974
+ 3.
1975
+ <method>
1976
+ <ejb-name>EJBNAME</ejb-name>
1977
+ <method-name>METHOD</method-name>
1978
+ <method-params>
1979
+ <method-param>PARAM-1</method-param>
1980
+ <method-param>PARAM-2</method-param>
1981
+ ...
1982
+ <method-param>PARAM-n</method-param>
1983
+ </method-params>
1984
+ </method>
1985
+
1986
+ This style is used to refer to a single method within a
1987
+ set of methods with an overloaded name. PARAM-1 through
1988
+ PARAM-n are the fully-qualified Java types of the
1989
+ method's input parameters (if the method has no input
1990
+ arguments, the method-params element contains no
1991
+ method-param elements). Arrays are specified by the
1992
+ array element's type, followed by one or more pair of
1993
+ square brackets (e.g. int[][]). If there are multiple
1994
+ methods with the same overloaded name, this style refers
1995
+ to all of the overloaded methods.
1996
+
1997
+ Examples:
1998
+
1999
+ Style 1: The following method element refers to all the
2000
+ methods of the EmployeeService bean's business, home,
2001
+ component, and/or web service endpoint interfaces:
2002
+
2003
+ <method>
2004
+ <ejb-name>EmployeeService</ejb-name>
2005
+ <method-name>*</method-name>
2006
+ </method>
2007
+
2008
+ Style 2: The following method element refers to all the
2009
+ create methods of the EmployeeService bean's home
2010
+ interface(s).
2011
+
2012
+ <method>
2013
+ <ejb-name>EmployeeService</ejb-name>
2014
+ <method-name>create</method-name>
2015
+ </method>
2016
+
2017
+ Style 3: The following method element refers to the
2018
+ create(String firstName, String LastName) method of the
2019
+ EmployeeService bean's home interface(s).
2020
+
2021
+ <method>
2022
+ <ejb-name>EmployeeService</ejb-name>
2023
+ <method-name>create</method-name>
2024
+ <method-params>
2025
+ <method-param>java.lang.String</method-param>
2026
+ <method-param>java.lang.String</method-param>
2027
+ </method-params>
2028
+ </method>
2029
+
2030
+ The following example illustrates a Style 3 element with
2031
+ more complex parameter types. The method
2032
+ foobar(char s, int i, int[] iar, mypackage.MyClass mycl,
2033
+ mypackage.MyClass[][] myclaar) would be specified as:
2034
+
2035
+ <method>
2036
+ <ejb-name>EmployeeService</ejb-name>
2037
+ <method-name>foobar</method-name>
2038
+ <method-params>
2039
+ <method-param>char</method-param>
2040
+ <method-param>int</method-param>
2041
+ <method-param>int[]</method-param>
2042
+ <method-param>mypackage.MyClass</method-param>
2043
+ <method-param>mypackage.MyClass[][]</method-param>
2044
+ </method-params>
2045
+ </method>
2046
+
2047
+ The optional method-intf element can be used when it becomes
2048
+ necessary to differentiate between a method that is multiply
2049
+ defined across the enterprise bean's business, home, component,
2050
+ and/or web service endpoint interfaces with the same name and
2051
+ signature. However, if the same method is a method of both the
2052
+ local business interface, and the local component interface,
2053
+ the same attribute applies to the method for both interfaces.
2054
+ Likewise, if the same method is a method of both the remote
2055
+ business interface and the remote component interface, the same
2056
+ attribute applies to the method for both interfaces.
2057
+
2058
+ For example, the method element
2059
+
2060
+ <method>
2061
+ <ejb-name>EmployeeService</ejb-name>
2062
+ <method-intf>Remote</method-intf>
2063
+ <method-name>create</method-name>
2064
+ <method-params>
2065
+ <method-param>java.lang.String</method-param>
2066
+ <method-param>java.lang.String</method-param>
2067
+ </method-params>
2068
+ </method>
2069
+
2070
+ can be used to differentiate the create(String, String)
2071
+ method defined in the remote interface from the
2072
+ create(String, String) method defined in the remote home
2073
+ interface, which would be defined as
2074
+
2075
+ <method>
2076
+ <ejb-name>EmployeeService</ejb-name>
2077
+ <method-intf>Home</method-intf>
2078
+ <method-name>create</method-name>
2079
+ <method-params>
2080
+ <method-param>java.lang.String</method-param>
2081
+ <method-param>java.lang.String</method-param>
2082
+ </method-params>
2083
+ </method>
2084
+
2085
+ and the create method that is defined in the local home
2086
+ interface which would be defined as
2087
+
2088
+ <method>
2089
+ <ejb-name>EmployeeService</ejb-name>
2090
+ <method-intf>LocalHome</method-intf>
2091
+ <method-name>create</method-name>
2092
+ <method-params>
2093
+ <method-param>java.lang.String</method-param>
2094
+ <method-param>java.lang.String</method-param>
2095
+ </method-params>
2096
+ </method>
2097
+
2098
+ The method-intf element can be used with all three Styles
2099
+ of the method element usage. For example, the following
2100
+ method element example could be used to refer to all the
2101
+ methods of the EmployeeService bean's remote home interface
2102
+ and the remote business interface.
2103
+
2104
+ <method>
2105
+ <ejb-name>EmployeeService</ejb-name>
2106
+ <method-intf>Home</method-intf>
2107
+ <method-name>*</method-name>
2108
+ </method>
2109
+
2110
+ ]]>
2111
+ </xsd:documentation>
2112
+ </xsd:annotation>
2113
+
2114
+ <xsd:sequence>
2115
+ <xsd:element name="description"
2116
+ type="javaee:descriptionType"
2117
+ minOccurs="0" maxOccurs="unbounded"/>
2118
+ <xsd:element name="ejb-name"
2119
+ type="javaee:ejb-nameType"/>
2120
+ <xsd:element name="method-intf"
2121
+ type="javaee:method-intfType"
2122
+ minOccurs="0">
2123
+ </xsd:element>
2124
+ <xsd:element name="method-name"
2125
+ type="javaee:method-nameType"/>
2126
+ <xsd:element name="method-params"
2127
+ type="javaee:method-paramsType"
2128
+ minOccurs="0"/>
2129
+ </xsd:sequence>
2130
+ <xsd:attribute name="id" type="xsd:ID"/>
2131
+ </xsd:complexType>
2132
+
2133
+ <!-- **************************************************** -->
2134
+
2135
+ <xsd:complexType name="multiplicityType">
2136
+ <xsd:annotation>
2137
+ <xsd:documentation>
2138
+
2139
+ The multiplicityType describes the multiplicity of the
2140
+ role that participates in a relation.
2141
+
2142
+ The value must be one of the two following:
2143
+
2144
+ One
2145
+ Many
2146
+
2147
+ </xsd:documentation>
2148
+ </xsd:annotation>
2149
+ <xsd:simpleContent>
2150
+ <xsd:restriction base="javaee:string">
2151
+ <xsd:enumeration value="One"/>
2152
+ <xsd:enumeration value="Many"/>
2153
+ </xsd:restriction>
2154
+ </xsd:simpleContent>
2155
+ </xsd:complexType>
2156
+
2157
+ <!-- **************************************************** -->
2158
+
2159
+ <xsd:complexType name="named-methodType">
2160
+ <xsd:sequence>
2161
+ <xsd:element name="method-name"
2162
+ type="javaee:string"/>
2163
+ <xsd:element name="method-params"
2164
+ type="javaee:method-paramsType"
2165
+ minOccurs="0"/>
2166
+ </xsd:sequence>
2167
+ <xsd:attribute name="id" type="xsd:ID"/>
2168
+ </xsd:complexType>
2169
+
2170
+ <!-- **************************************************** -->
2171
+
2172
+ <xsd:complexType name="persistence-typeType">
2173
+ <xsd:annotation>
2174
+ <xsd:documentation>
2175
+
2176
+ The persistence-typeType specifies an entity bean's persistence
2177
+ management type.
2178
+
2179
+ The persistence-type element must be one of the two following:
2180
+
2181
+ Bean
2182
+ Container
2183
+
2184
+ </xsd:documentation>
2185
+ </xsd:annotation>
2186
+ <xsd:simpleContent>
2187
+ <xsd:restriction base="javaee:string">
2188
+ <xsd:enumeration value="Bean"/>
2189
+ <xsd:enumeration value="Container"/>
2190
+ </xsd:restriction>
2191
+ </xsd:simpleContent>
2192
+ </xsd:complexType>
2193
+
2194
+ <!-- **************************************************** -->
2195
+
2196
+ <xsd:complexType name="query-methodType">
2197
+ <xsd:annotation>
2198
+ <xsd:documentation>
2199
+ <![CDATA[
2200
+
2201
+ The query-method specifies the method for a finder or select
2202
+ query.
2203
+
2204
+ The method-name element specifies the name of a finder or select
2205
+ method in the entity bean's implementation class.
2206
+
2207
+ Each method-param must be defined for a query-method using the
2208
+ method-params element.
2209
+
2210
+ It is used by the query-method element.
2211
+
2212
+ Example:
2213
+
2214
+ <query>
2215
+ <description>Method finds large orders</description>
2216
+ <query-method>
2217
+ <method-name>findLargeOrders</method-name>
2218
+ <method-params></method-params>
2219
+ </query-method>
2220
+ <ejb-ql>
2221
+ SELECT OBJECT(o) FROM Order o
2222
+ WHERE o.amount &gt; 1000
2223
+ </ejb-ql>
2224
+ </query>
2225
+
2226
+ ]]>
2227
+ </xsd:documentation>
2228
+ </xsd:annotation>
2229
+
2230
+ <xsd:sequence>
2231
+ <xsd:element name="method-name"
2232
+ type="javaee:method-nameType"/>
2233
+ <xsd:element name="method-params"
2234
+ type="javaee:method-paramsType"/>
2235
+ </xsd:sequence>
2236
+ <xsd:attribute name="id" type="xsd:ID"/>
2237
+ </xsd:complexType>
2238
+
2239
+ <!-- **************************************************** -->
2240
+
2241
+ <xsd:complexType name="queryType">
2242
+ <xsd:annotation>
2243
+ <xsd:documentation>
2244
+
2245
+ The queryType defines a finder or select
2246
+ query. It contains
2247
+ - an optional description of the query
2248
+ - the specification of the finder or select
2249
+ method it is used by
2250
+ - an optional specification of the result type
2251
+ mapping, if the query is for a select method
2252
+ and entity objects are returned.
2253
+ - the EJB QL query string that defines the query.
2254
+
2255
+ Queries that are expressible in EJB QL must use the ejb-ql
2256
+ element to specify the query. If a query is not expressible
2257
+ in EJB QL, the description element should be used to
2258
+ describe the semantics of the query and the ejb-ql element
2259
+ should be empty.
2260
+
2261
+ The result-type-mapping is an optional element. It can only
2262
+ be present if the query-method specifies a select method
2263
+ that returns entity objects. The default value for the
2264
+ result-type-mapping element is "Local".
2265
+
2266
+ </xsd:documentation>
2267
+ </xsd:annotation>
2268
+
2269
+ <xsd:sequence>
2270
+ <xsd:element name="description"
2271
+ type="javaee:descriptionType" minOccurs="0"/>
2272
+ <xsd:element name="query-method"
2273
+ type="javaee:query-methodType"/>
2274
+ <xsd:element name="result-type-mapping"
2275
+ type="javaee:result-type-mappingType"
2276
+ minOccurs="0"/>
2277
+ <xsd:element name="ejb-ql"
2278
+ type="javaee:xsdStringType"/>
2279
+ </xsd:sequence>
2280
+ <xsd:attribute name="id" type="xsd:ID"/>
2281
+ </xsd:complexType>
2282
+
2283
+ <!-- **************************************************** -->
2284
+
2285
+ <xsd:complexType name="relationship-role-sourceType">
2286
+ <xsd:annotation>
2287
+ <xsd:documentation>
2288
+
2289
+ The relationship-role-sourceType designates the source of a
2290
+ role that participates in a relationship. A
2291
+ relationship-role-sourceType is used by
2292
+ relationship-role-source elements to uniquely identify an
2293
+ entity bean.
2294
+
2295
+ </xsd:documentation>
2296
+ </xsd:annotation>
2297
+
2298
+ <xsd:sequence>
2299
+ <xsd:element name="description"
2300
+ type="javaee:descriptionType"
2301
+ minOccurs="0"
2302
+ maxOccurs="unbounded"/>
2303
+ <xsd:element name="ejb-name"
2304
+ type="javaee:ejb-nameType"/>
2305
+ </xsd:sequence>
2306
+ <xsd:attribute name="id" type="xsd:ID"/>
2307
+ </xsd:complexType>
2308
+
2309
+ <!-- **************************************************** -->
2310
+
2311
+ <xsd:complexType name="relationshipsType">
2312
+ <xsd:annotation>
2313
+ <xsd:documentation>
2314
+
2315
+ The relationshipsType describes the relationships in
2316
+ which entity beans with container-managed persistence
2317
+ participate. The relationshipsType contains an optional
2318
+ description; and a list of ejb-relation elements, which
2319
+ specify the container managed relationships.
2320
+
2321
+ </xsd:documentation>
2322
+ </xsd:annotation>
2323
+
2324
+ <xsd:sequence>
2325
+ <xsd:element name="description"
2326
+ type="javaee:descriptionType"
2327
+ minOccurs="0"
2328
+ maxOccurs="unbounded"/>
2329
+ <xsd:element name="ejb-relation"
2330
+ type="javaee:ejb-relationType"
2331
+ maxOccurs="unbounded">
2332
+
2333
+ <xsd:unique name="role-name-uniqueness">
2334
+ <xsd:annotation>
2335
+ <xsd:documentation>
2336
+
2337
+ The ejb-relationship-role-name contains the name of a
2338
+ relationship role. The name must be unique within
2339
+ a relationship, but can be reused in different
2340
+ relationships.
2341
+
2342
+ </xsd:documentation>
2343
+ </xsd:annotation>
2344
+ <xsd:selector
2345
+ xpath=".//javaee:ejb-relationship-role-name"/>
2346
+ <xsd:field
2347
+ xpath="."/>
2348
+ </xsd:unique>
2349
+ </xsd:element>
2350
+ </xsd:sequence>
2351
+ <xsd:attribute name="id" type="xsd:ID"/>
2352
+ </xsd:complexType>
2353
+
2354
+ <!-- **************************************************** -->
2355
+
2356
+ <xsd:complexType name="remove-methodType">
2357
+ <xsd:sequence>
2358
+ <xsd:element name="bean-method"
2359
+ type="javaee:named-methodType"/>
2360
+ <xsd:element name="retain-if-exception"
2361
+ type="javaee:true-falseType"
2362
+ minOccurs="0"/>
2363
+ </xsd:sequence>
2364
+ <xsd:attribute name="id" type="xsd:ID"/>
2365
+ </xsd:complexType>
2366
+
2367
+ <!-- **************************************************** -->
2368
+
2369
+ <xsd:complexType name="result-type-mappingType">
2370
+ <xsd:annotation>
2371
+ <xsd:documentation>
2372
+
2373
+ The result-type-mappingType is used in the query element to
2374
+ specify whether an abstract schema type returned by a query
2375
+ for a select method is to be mapped to an EJBLocalObject or
2376
+ EJBObject type.
2377
+
2378
+ The value must be one of the following:
2379
+
2380
+ Local
2381
+ Remote
2382
+
2383
+ </xsd:documentation>
2384
+ </xsd:annotation>
2385
+ <xsd:simpleContent>
2386
+ <xsd:restriction base="javaee:string">
2387
+ <xsd:enumeration value="Local"/>
2388
+ <xsd:enumeration value="Remote"/>
2389
+ </xsd:restriction>
2390
+ </xsd:simpleContent>
2391
+ </xsd:complexType>
2392
+
2393
+ <!-- **************************************************** -->
2394
+
2395
+ <xsd:complexType name="security-identityType">
2396
+ <xsd:annotation>
2397
+ <xsd:documentation>
2398
+
2399
+ The security-identityType specifies whether the caller's
2400
+ security identity is to be used for the execution of the
2401
+ methods of the enterprise bean or whether a specific run-as
2402
+ identity is to be used. It contains an optional description
2403
+ and a specification of the security identity to be used.
2404
+
2405
+ </xsd:documentation>
2406
+ </xsd:annotation>
2407
+
2408
+ <xsd:sequence>
2409
+ <xsd:element name="description"
2410
+ type="javaee:descriptionType"
2411
+ minOccurs="0"
2412
+ maxOccurs="unbounded"/>
2413
+ <xsd:choice>
2414
+ <xsd:element name="use-caller-identity"
2415
+ type="javaee:emptyType">
2416
+ <xsd:annotation>
2417
+ <xsd:documentation>
2418
+
2419
+ The use-caller-identity element specifies that
2420
+ the caller's security identity be used as the
2421
+ security identity for the execution of the
2422
+ enterprise bean's methods.
2423
+
2424
+ </xsd:documentation>
2425
+ </xsd:annotation>
2426
+ </xsd:element>
2427
+ <xsd:element name="run-as"
2428
+ type="javaee:run-asType"/>
2429
+ </xsd:choice>
2430
+ </xsd:sequence>
2431
+ <xsd:attribute name="id" type="xsd:ID"/>
2432
+ </xsd:complexType>
2433
+
2434
+ <!-- **************************************************** -->
2435
+
2436
+ <xsd:complexType name="session-beanType">
2437
+ <xsd:annotation>
2438
+ <xsd:documentation>
2439
+
2440
+ The session-beanType declares an session bean. The
2441
+ declaration consists of:
2442
+
2443
+ - an optional description
2444
+ - an optional display name
2445
+ - an optional icon element that contains a small and a large
2446
+ icon file name
2447
+ - a name assigned to the enterprise bean
2448
+ in the deployment description
2449
+ - an optional mapped-name element that can be used to provide
2450
+ vendor-specific deployment information such as the physical
2451
+ jndi-name of the session bean's remote home/business interface.
2452
+ This element is not required to be supported by all
2453
+ implementations. Any use of this element is non-portable.
2454
+ - the names of all the remote or local business interfaces,
2455
+ if any
2456
+ - the names of the session bean's remote home and
2457
+ remote interfaces, if any
2458
+ - the names of the session bean's local home and
2459
+ local interfaces, if any
2460
+ - the name of the session bean's web service endpoint
2461
+ interface, if any
2462
+ - the session bean's implementation class
2463
+ - the session bean's state management type
2464
+ - an optional declaration of the session bean's timeout method.
2465
+ - the optional session bean's transaction management type.
2466
+ If it is not present, it is defaulted to Container.
2467
+ - an optional list of the session bean class and/or
2468
+ superclass around-invoke methods.
2469
+ - an optional declaration of the bean's
2470
+ environment entries
2471
+ - an optional declaration of the bean's EJB references
2472
+ - an optional declaration of the bean's local
2473
+ EJB references
2474
+ - an optional declaration of the bean's web
2475
+ service references
2476
+ - an optional declaration of the security role
2477
+ references
2478
+ - an optional declaration of the security identity
2479
+ to be used for the execution of the bean's methods
2480
+ - an optional declaration of the bean's resource
2481
+ manager connection factory references
2482
+ - an optional declaration of the bean's resource
2483
+ environment references.
2484
+ - an optional declaration of the bean's message
2485
+ destination references
2486
+
2487
+ The elements that are optional are "optional" in the sense
2488
+ that they are omitted when if lists represented by them are
2489
+ empty.
2490
+
2491
+ Either both the local-home and the local elements or both
2492
+ the home and the remote elements must be specified for the
2493
+ session bean.
2494
+
2495
+ The service-endpoint element may only be specified if the
2496
+ bean is a stateless session bean.
2497
+
2498
+ </xsd:documentation>
2499
+ </xsd:annotation>
2500
+
2501
+ <xsd:sequence>
2502
+ <xsd:group ref="javaee:descriptionGroup"/>
2503
+ <xsd:element name="ejb-name"
2504
+ type="javaee:ejb-nameType"/>
2505
+ <xsd:element name="mapped-name"
2506
+ type="javaee:xsdStringType"
2507
+ minOccurs="0"/>
2508
+ <xsd:element name="home"
2509
+ type="javaee:homeType"
2510
+ minOccurs="0"/>
2511
+ <xsd:element name="remote"
2512
+ type="javaee:remoteType"
2513
+ minOccurs="0"/>
2514
+ <xsd:element name="local-home"
2515
+ type="javaee:local-homeType"
2516
+ minOccurs="0"/>
2517
+ <xsd:element name="local"
2518
+ type="javaee:localType"
2519
+ minOccurs="0"/>
2520
+ <xsd:element name="business-local"
2521
+ type="javaee:fully-qualified-classType"
2522
+ minOccurs="0"
2523
+ maxOccurs="unbounded"/>
2524
+ <xsd:element name="business-remote"
2525
+ type="javaee:fully-qualified-classType"
2526
+ minOccurs="0"
2527
+ maxOccurs="unbounded"/>
2528
+ <xsd:element name="service-endpoint"
2529
+ type="javaee:fully-qualified-classType"
2530
+ minOccurs="0">
2531
+ <xsd:annotation>
2532
+ <xsd:documentation>
2533
+
2534
+ The service-endpoint element contains the
2535
+ fully-qualified name of the enterprise bean's web
2536
+ service endpoint interface. The service-endpoint
2537
+ element may only be specified for a stateless
2538
+ session bean. The specified interface must be a
2539
+ valid JAX-RPC service endpoint interface.
2540
+
2541
+ </xsd:documentation>
2542
+ </xsd:annotation>
2543
+ </xsd:element>
2544
+ <xsd:element name="ejb-class"
2545
+ type="javaee:ejb-classType"
2546
+ minOccurs="0">
2547
+ <xsd:annotation>
2548
+ <xsd:documentation>
2549
+
2550
+ The ejb-class element specifies the fully qualified name
2551
+ of the bean class for this ejb. It is required unless
2552
+ there is a component-defining annotation for the same
2553
+ ejb-name.
2554
+
2555
+ </xsd:documentation>
2556
+ </xsd:annotation>
2557
+ </xsd:element>
2558
+ <xsd:element name="session-type"
2559
+ type="javaee:session-typeType"
2560
+ minOccurs="0"/>
2561
+ <xsd:element name="timeout-method"
2562
+ type="javaee:named-methodType"
2563
+ minOccurs="0"/>
2564
+ <xsd:element name="init-method"
2565
+ type="javaee:init-methodType"
2566
+ minOccurs="0"
2567
+ maxOccurs="unbounded">
2568
+ <xsd:annotation>
2569
+ <xsd:documentation>
2570
+
2571
+ The init-method element specifies the mappings for
2572
+ EJB 2.x style create methods for an EJB 3.0 bean.
2573
+ This element can only be specified for stateful
2574
+ session beans.
2575
+
2576
+ </xsd:documentation>
2577
+ </xsd:annotation>
2578
+ </xsd:element>
2579
+ <xsd:element name="remove-method"
2580
+ type="javaee:remove-methodType"
2581
+ minOccurs="0"
2582
+ maxOccurs="unbounded">
2583
+ <xsd:annotation>
2584
+ <xsd:documentation>
2585
+
2586
+ The remove-method element specifies the mappings for
2587
+ EJB 2.x style remove methods for an EJB 3.0 bean.
2588
+ This element can only be specified for stateful
2589
+ session beans.
2590
+
2591
+ </xsd:documentation>
2592
+ </xsd:annotation>
2593
+ </xsd:element>
2594
+ <xsd:element name="transaction-type"
2595
+ type="javaee:transaction-typeType"
2596
+ minOccurs="0"/>
2597
+ <xsd:element name="around-invoke"
2598
+ type="javaee:around-invokeType"
2599
+ minOccurs="0"
2600
+ maxOccurs="unbounded"/>
2601
+ <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
2602
+ <xsd:element name="post-activate"
2603
+ type="javaee:lifecycle-callbackType"
2604
+ minOccurs="0"
2605
+ maxOccurs="unbounded"/>
2606
+ <xsd:element name="pre-passivate"
2607
+ type="javaee:lifecycle-callbackType"
2608
+ minOccurs="0"
2609
+ maxOccurs="unbounded"/>
2610
+ <xsd:element name="security-role-ref"
2611
+ type="javaee:security-role-refType"
2612
+ minOccurs="0"
2613
+ maxOccurs="unbounded">
2614
+ </xsd:element>
2615
+ <xsd:element name="security-identity"
2616
+ type="javaee:security-identityType"
2617
+ minOccurs="0">
2618
+ </xsd:element>
2619
+ </xsd:sequence>
2620
+ <xsd:attribute name="id" type="xsd:ID"/>
2621
+ </xsd:complexType>
2622
+
2623
+ <!-- **************************************************** -->
2624
+
2625
+ <xsd:complexType name="session-typeType">
2626
+ <xsd:annotation>
2627
+ <xsd:documentation>
2628
+
2629
+ The session-typeType describes whether the session bean is a
2630
+ stateful session or stateless session. It is used by
2631
+ session-type elements.
2632
+
2633
+ The value must be one of the two following:
2634
+
2635
+ Stateful
2636
+ Stateless
2637
+
2638
+ </xsd:documentation>
2639
+ </xsd:annotation>
2640
+ <xsd:simpleContent>
2641
+ <xsd:restriction base="javaee:string">
2642
+ <xsd:enumeration value="Stateful"/>
2643
+ <xsd:enumeration value="Stateless"/>
2644
+ </xsd:restriction>
2645
+ </xsd:simpleContent>
2646
+ </xsd:complexType>
2647
+
2648
+ <!-- **************************************************** -->
2649
+
2650
+ <xsd:complexType name="trans-attributeType">
2651
+ <xsd:annotation>
2652
+ <xsd:documentation>
2653
+
2654
+ The trans-attributeType specifies how the container must
2655
+ manage the transaction boundaries when delegating a method
2656
+ invocation to an enterprise bean's business method.
2657
+
2658
+ The value must be one of the following:
2659
+
2660
+ NotSupported
2661
+ Supports
2662
+ Required
2663
+ RequiresNew
2664
+ Mandatory
2665
+ Never
2666
+
2667
+ </xsd:documentation>
2668
+ </xsd:annotation>
2669
+ <xsd:simpleContent>
2670
+ <xsd:restriction base="javaee:string">
2671
+ <xsd:enumeration value="NotSupported"/>
2672
+ <xsd:enumeration value="Supports"/>
2673
+ <xsd:enumeration value="Required"/>
2674
+ <xsd:enumeration value="RequiresNew"/>
2675
+ <xsd:enumeration value="Mandatory"/>
2676
+ <xsd:enumeration value="Never"/>
2677
+ </xsd:restriction>
2678
+ </xsd:simpleContent>
2679
+ </xsd:complexType>
2680
+
2681
+ <!-- **************************************************** -->
2682
+
2683
+ <xsd:complexType name="transaction-typeType">
2684
+ <xsd:annotation>
2685
+ <xsd:documentation>
2686
+
2687
+ The transaction-typeType specifies an enterprise bean's
2688
+ transaction management type.
2689
+
2690
+ The transaction-type must be one of the two following:
2691
+
2692
+ Bean
2693
+ Container
2694
+
2695
+ </xsd:documentation>
2696
+ </xsd:annotation>
2697
+ <xsd:simpleContent>
2698
+ <xsd:restriction base="javaee:string">
2699
+ <xsd:enumeration value="Bean"/>
2700
+ <xsd:enumeration value="Container"/>
2701
+ </xsd:restriction>
2702
+ </xsd:simpleContent>
2703
+ </xsd:complexType>
2704
+
2705
+ </xsd:schema>
2706
+