blob: 9a2cc7ce76709132079057e8df167020d4f72ed4 [file] [log] [blame]
david_williamse073de12007-04-28 04:01:44 +00001<!--
2Copyright (c) 2000 Sun Microsystems, Inc.,
3901 San Antonio Road,
4Palo Alto, California 94303, U.S.A.
5All rights reserved.
6
7Sun Microsystems, Inc. has intellectual property rights relating to
8technology embodied in the product that is described in this document.
9In particular, and without limitation, these intellectual property
10rights may include one or more of the U.S. patents listed at
11http://www.sun.com/patents and one or more additional patents or
12pending patent applications in the U.S. and in other countries.
13
14This document and the product to which it pertains are distributed
15under licenses restricting their use, copying, distribution, and
16decompilation. This document may be reproduced and distributed but may
17not be changed without prior written authorization of Sun and its
18licensors, if any.
19
20Third-party software, including font technology, is copyrighted and
21licensed from Sun suppliers.
22
23Sun, Sun Microsystems, the Sun logo, Java, JavaServer Pages, Java
24Naming and Directory Interface, JDBC, JDK, JavaMail and and
25Enterprise JavaBeans are trademarks or registered trademarks of Sun
26Microsystems, Inc. in the U.S. and other countries.
27
28Federal Acquisitions: Commercial Software - Government Users Subject to
29Standard License Terms and Conditions.
30
31DOCUMENTATION IS PROVIDED "AS IS" AND ALL EXPRESS OR IMPLIED
32CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED
33WARRANTY OF MERCHANTABILITY, FITNESS FOR FOR A PARTICULAR PURPOSE OR
34NON-INFRINGEMENT, ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT SUCH
35DISCLAIMERS ARE HELD TO BE LEGALLY INVALID.
36
37
38_________________________________________________________________________
39
40Copyright (c) 2000 Sun Microsystems, Inc.,
41901 San Antonio Road,
42Palo Alto, California 94303, E'tats-Unis.
43Tous droits re'serve's.
44
45Sun Microsystems, Inc. a les droits de proprie'te' intellectuels
46relatants a` la technologie incorpore'e dans le produit qui est de'crit
47dans ce document. En particulier, et sans la limitation, ces droits de
48proprie'te' intellectuels peuvent inclure un ou plus des brevets
49ame'ricains e'nume're's a` http://www.sun.com/patents et un ou les
50brevets plus supple'mentaires ou les applications de brevet en attente
51dans les E'tats-Unis et dans les autres pays.
52
53Ce produit ou document est prote'ge' par un copyright et distribue'
54avec des licences qui en restreignent l'utilisation, la copie, la
55distribution, et la de'compilation. Ce documention associe n peut
56e^tre reproduite et distribuer, par quelque moyen que ce soit, sans
57l'autorisation pre'alable et e'crite de Sun et de ses bailleurs de
58licence, le cas e'che'ant.
59
60Le logiciel de'tenu par des tiers, et qui comprend la technologie
61relative aux polices de caracte`res, est prote'ge' par un copyright et
62licencie' par des fournisseurs de Sun.
63
64Sun, Sun Microsystems, le logo Sun, Java, JavaServer Pages, Java
65Naming and Directory Interface, JDBC, JDK, JavaMail et and
66Enterprise JavaBeans sont des marques de fabrique ou des marques
67de'pose'es de Sun Microsystems, Inc. aux E'tats-Unis et dans d'autres
68pays.
69
70LA DOCUMENTATION EST FOURNIE "EN L'E'TAT" ET TOUTES AUTRES CONDITIONS,
71DECLARATIONS ET GARANTIES EXPRESSES OU TACITES SONT FORMELLEMENT
72EXCLUES, DANS LA MESURE AUTORISEE PAR LA LOI APPLICABLE, Y COMPRIS
73NOTAMMENT TOUTE GARANTIE IMPLICITE RELATIVE A LA QUALITE MARCHANDE, A
74L'APTITUDE A UNE UTILISATION PARTICULIERE OU A L'ABSENCE DE
75CONTREFAC,ON.
76-->
77
78<!--
79This is the XML DTD for the EJB 2.0 deployment descriptor.
80All EJB 2.0 deployment descriptors must include a DOCTYPE
81of the following form:
82
83 <!DOCTYPE ejb-jar PUBLIC
84 "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN"
85 "http://java.sun.com/dtd/ejb-jar_2_0.dtd">
86
87-->
88
89<!--
90The following conventions apply to all J2EE deployment descriptor
91elements unless indicated otherwise.
92
93- In elements that contain PCDATA, leading and trailing whitespace
94 in the data may be ignored.
95
96- In elements whose value is an "enumerated type", the value is
97 case sensitive.
98
99- In elements that specify a pathname to a file within the same
100 JAR file, relative filenames (i.e., those not starting with "/")
101 are considered relative to the root of the JAR file's namespace.
102 Absolute filenames (i.e., those starting with "/") also specify
103 names in the root of the JAR file's namespace. In general, relative
104 names are preferred. The exception is .war files where absolute
105 names are preferred for consistency with the servlet API.
106-->
107
108
109<!--
110The ejb-jar element is the root element of the EJB deployment
111descriptor. It contains
112
113 - an optional description of the ejb-jar file
114 - an optional display name
115 - an optional small icon file name
116 - an optional large icon file name
117 - mandatory structural information about all included
118 enterprise beans
119 - a descriptor for container managed relationships, if any
120 - an optional application-assembly descriptor
121 - an optional name of an ejb-client-jar file for the ejb-jar.
122-->
123<!ELEMENT ejb-jar (description?, display-name?, small-icon?,
124large-icon?, enterprise-beans, relationships?, assembly-descriptor?,
125ejb-client-jar?)>
126
127<!--
128The abstract-schema-name element specifies the name of the abstract
129schema type of an entity bean with cmp-version 2.x. It is used in EJB
130QL queries.
131
132For example, the abstract-schema-name for an entity bean whose local
133interface is com.acme.commerce.Order might be Order.
134
135Used in: entity
136-->
137<!ELEMENT abstract-schema-name (#PCDATA)>
138
139<!--
140
141The acknowledge-mode element specifies whether JMS AUTO_ACKNOWLEDGE or
142DUPS_OK_ACKNOWLEDGE message acknowledgment semantics should be used
143for the onMessage message of a message-driven bean that uses bean
144managed transaction demarcation.
145
146The acknowledge-mode element must be one of the two following:
147
148 <acknowledge-mode>Auto-acknowledge</acknowledge-mode>
149 <acknowledge-mode>Dups-ok-acknowledge</acknowledgemode>
150
151Used in: message-driven
152-->
153<!ELEMENT acknowledge-mode (#PCDATA)>
154
155<!--
156The assembly-descriptor element contains application-assembly information.
157
158The application-assembly information consists of the following parts:
159the definition of security roles, the definition of method
160permissions, the definition of transaction attributes for
161enterprise beans with container-managed transaction demarcation and
162a list of methods to be excluded from being invoked.
163
164All the parts are optional in the sense that they are omitted if the
165lists represented by them are empty.
166
167Providing an assembly-descriptor in the deployment descriptor is
168optional for the ejb-jar file producer.
169
170Used in: ejb-jar
171-->
172<!ELEMENT assembly-descriptor (security-role*, method-permission*,
173container-transaction*, exclude-list?)>
174
175<!--
176The cascade-delete element specifies that, within a particular
177relationship, the lifetime of one or more entity beans is dependent
178upon the lifetime of another entity bean. The cascade-delete element
179can only be specified for an ejb-relationship-role element contained
180in an ejb-relation element in which the other ejb-relationship-role
181element specifies a multiplicity of One.
182
183Used in: ejb-relationship-role
184-->
185<!ELEMENT cascade-delete EMPTY>
186
187<!--
188The cmp-field element describes a container-managed field. The
189field element includes an optional description of the field, and the
190name of the field.
191
192Used in: entity
193-->
194<!ELEMENT cmp-field (description?, field-name)>
195
196<!--
197The cmp-version element specifies the version of an entity bean
198with container-managed persistence.
199
200The cmp-version element must be one of the two following:
201
202 <cmp-version>1.x</cmp-version>
203 <cmp-version>2.x</cmp-version>
204
205The default value of the cmp-version element is 2.x.
206
207Used in: entity
208-->
209<!ELEMENT cmp-version (#PCDATA)>
210
211<!--
212
213The cmr-field element describes the bean provider's view of a
214relationship. It consists of an optional description, and the name and
215the class type of a field in the source of a role of a
216relationship. The cmr-field-name element corresponds to the name used
217for the get and set accessor methods for the relationship. The
218cmr-field-type element is used only for collection-valued
219cmr-fields. It specifies the type of the collection that is used.
220
221Used in: ejb-relationship-role
222-->
223<!ELEMENT cmr-field (description?, cmr-field-name, cmr-field-type?)>
224
225<!--
226The cmr-field-name element specifies the name of a logical
227relationship field in the entity bean class. The name of the cmr-field
228must begin with a lowercase letter. This field is accessed by methods
229whose names consist of the name of the field specified by
230cmr-field-name in which the first letter is uppercased, prefixed by
231"get" or "set".
232
233Used in: cmr-field
234-->
235<!ELEMENT cmr-field-name (#PCDATA)>
236
237<!--
238The cmr-field-type element specifies the class of a
239collection-valued logical relationship field in the entity bean
240class. The value of the cmr-field-type element must be either:
241java.util.Collection or java.util.Set.
242
243Used in: cmr-field
244-->
245<!ELEMENT cmr-field-type (#PCDATA)>
246
247<!--
248The container-transaction element specifies how the container
249must manage transaction scopes for the enterprise bean's method
250invocations. The element consists of an optional description, a list
251of method elements, and a transaction attribute. The transaction
252attribute is to be applied to all the specified methods.
253
254Used in: assembly-descriptor
255-->
256<!ELEMENT container-transaction (description?, method+, trans-attribute)>
257
258<!--
259The description element is used to provide text describing the parent
260element. The description element should include any information that
261the enterprise bean ejb-jar file producer wants to provide to the consumer of
262the enterprise bean ejb-jar file (i.e., to the Deployer). Typically, the tools
263used by the enterprise bean ejb-jar file consumer will display the description
264when processing the parent element that contains the description.
265
266Used in: cmp-field, cmr-field, container-transaction, ejb-jar,
267ejb-local-ref, ejb-ref, ejb-relation, ejb-relationship-role, entity,
268env-entry, exclude-list, message-driven, method, method-permission,
269query, relationship-role-source, relationships, resource-env-ref,
270resource-ref, run-as, security-identity, security-role,
271security-role-ref, session
272-->
273<!ELEMENT description (#PCDATA)>
274
275<!--
276The destination-type element specifies the type of the JMS
277destination. The type is specified by the Java interface expected to
278be implemented by the destination.
279
280The destination-type element must be one of the two following:
281
282<destination-type>javax.jms.Queue</destination-type>
283<destination-type>javax.jms.Topic</destination-type>
284
285Used in: message-driven-destination
286-->
287<!ELEMENT destination-type (#PCDATA)>
288
289<!--
290The display-name element contains a short name that is intended to be
291displayed by tools. The display name need not be unique.
292
293Used in: ejb-jar, entity, message-driven, session
294
295Example:
296
297<display-name>Employee Self Service</display-name>
298-->
299<!ELEMENT display-name (#PCDATA)>
300
301<!--
302The ejb-class element contains the fully-qualified name of the
303enterprise bean's class.
304
305Used in: entity, message-driven, session
306
307Example:
308
309<ejb-class>com.wombat.empl.EmployeeServiceBean</ejb-class>
310-->
311<!ELEMENT ejb-class (#PCDATA)>
312
313<!--
314The optional ejb-client-jar element specifies a JAR file that contains
315the class files necessary for a client program to access the
316enterprise beans in the ejb-jar file.
317
318Used in: ejb-jar
319
320Example:
321
322<ejb-client-jar>employee_service_client.jar</ejb-client-jar>
323-->
324<!ELEMENT ejb-client-jar (#PCDATA)>
325
326<!--
327The ejb-link element is used in the ejb-ref or ejb-local-ref
328elements to specify that an EJB reference is linked to an
329enterprise bean.
330
331The value of the ejb-link element must be the ejb-name of an
332enterprise bean in the same ejb-jar file or in another ejb-jar
333file in the same J2EE application unit.
334
335Alternatively, the name in the ejb-link element may be composed of a
336path name specifying the ejb-jar containing the referenced enterprise
337bean with the ejb-name of the target bean appended and separated from
338the path name by "#". The path name is relative to the ejb-jar file
339containing the enterprise bean that is referencing the enterprise bean.
340This allows multiple enterprise beans with the same ejb-name to be
341uniquely identified.
342
343Used in: ejb-local-ref, ejb-ref
344
345Examples:
346
347 <ejb-link>EmployeeRecord</ejb-link>
348
349 <ejb-link>../products/product.jar#ProductEJB</ejb-link>
350
351-->
352<!ELEMENT ejb-link (#PCDATA)>
353
354<!--
355The ejb-local-ref element is used for the declaration of a reference to
356an enterprise bean's local home. The declaration consists of:
357
358 - an optional description
359 - the EJB reference name used in the code of the enterprise bean
360 that's referencing the enterprise bean
361 - the expected type of the referenced enterprise bean
362 - the expected local home and local interfaces of the referenced
363 enterprise bean
364 - optional ejb-link information, used to specify the referenced
365 enterprise bean
366
367Used in: entity, message-driven, session
368-->
369<!ELEMENT ejb-local-ref (description?, ejb-ref-name, ejb-ref-type,
370 local-home, local, ejb-link?)>
371
372<!--
373The ejb-name element specifies an enterprise bean's name. This name is
374assigned by the ejb-jar file producer to name the enterprise bean in
375the ejb-jar file's deployment descriptor. The name must be unique
376among the names of the enterprise beans in the same ejb-jar file.
377
378There is no architected relationship between the ejb-name in the
379deployment descriptor and the JNDI name that the Deployer will assign
380to the enterprise bean's home.
381
382The name for an entity bean with cmp-version 2.x must conform to the
383lexical rules for an NMTOKEN. The name for an entity bean with
384cmp-version 2.x must not be a reserved literal in EJB QL.
385
386Used in: entity, message-driven, method, relationship-role-source,
387session
388
389Example:
390
391<ejb-name>EmployeeService</ejb-name>
392-->
393<!ELEMENT ejb-name (#PCDATA)>
394
395<!--
396The ejb-ql element contains the EJB QL query string that defines
397a finder or select query. This element is defined within the scope of
398a query element whose contents specify the finder or the select method
399that uses the query. The content must be a valid EJB QL query string
400for the entity bean for which the query is specified.
401
402The ejb-ql element must be specified for all queries that are
403expressible in EJB QL.
404
405Used in: query
406
407Example:
408<query>
409 <query-method>
410 <method-name>ejbSelectPendingLineitems</method-name>
411 <method-params/>
412 </query-method>
413 <ejb-ql>SELECT OBJECT(l) FROM LineItems l WHERE l.shipped <> TRUE
414 </ejb-ql>
415</query>
416
417-->
418<!ELEMENT ejb-ql (#PCDATA)>
419
420<!--
421The ejb-ref element is used for the declaration of a reference to
422an enterprise bean's home. The declaration consists of:
423
424 - an optional description
425 - the EJB reference name used in the code of
426 the enterprise bean that's referencing the enterprise bean
427 - the expected type of the referenced enterprise bean
428 - the expected home and remote interfaces of the referenced
429 enterprise bean
430 - optional ejb-link information, used to specify the referenced
431 enterprise bean
432
433Used in: entity, message-driven, session
434-->
435<!ELEMENT ejb-ref (description?, ejb-ref-name, ejb-ref-type,
436 home, remote, ejb-link?)>
437
438<!--
439The ejb-ref-name element contains the name of an EJB reference. The
440EJB reference is an entry in the enterprise bean's environment and is
441relative to the java:comp/env context. The name must be unique
442within the enterprise bean.
443
444It is recommended that name is prefixed with "ejb/".
445
446Used in: ejb-local-ref, ejb-ref
447
448Example:
449
450<ejb-ref-name>ejb/Payroll</ejb-ref-name>
451-->
452<!ELEMENT ejb-ref-name (#PCDATA)>
453
454<!--
455The ejb-ref-type element contains the expected type of the
456referenced enterprise bean.
457
458The ejb-ref-type element must be one of the following:
459
460 <ejb-ref-type>Entity</ejb-ref-type>
461 <ejb-ref-type>Session</ejb-ref-type>
462
463Used in: ejb-local-ref, ejb-ref
464-->
465<!ELEMENT ejb-ref-type (#PCDATA)>
466
467<!--
468
469The ejb-relation element describes a relationship between two
470entity beans with container-managed persistence. An ejb-relation
471element contains a description; an optional ejb-relation-name element;
472and exactly two relationship role declarations, defined by the
473ejb-relationship-role elements. The name of the relationship, if
474specified, is unique within the ejb-jar file.
475
476Used in: relationships
477-->
478<!ELEMENT ejb-relation (description?, ejb-relation-name?, ejb-relationship-role,
479ejb-relationship-role)>
480
481<!--
482The ejb-relation-name element provides a unique name for a relationship.
483
484Used in: ejb-relation
485-->
486<!ELEMENT ejb-relation-name (#PCDATA)>
487
488<!--
489The ejb-relationship-role element describes a role within a
490relationship. There are two roles in each relationship.
491
492The ejb-relationship-role element contains an optional description; an
493optional name for the relationship role; a specification of the
494multiplicity of the role; an optional specification of cascade-delete
495functionality for the role; the role source; and a declaration of the
496cmr-field, if any, by means of which the other side of the
497relationship is accessed from the perspective of the role source.
498
499The multiplicity and role-source element are mandatory.
500
501The relationship-role-source element designates an entity bean by
502means of an ejb-name element. For bidirectional relationships, both
503roles of a relationship must declare a relationship-role-source
504element that specifies a cmr-field in terms of which the relationship
505is accessed. The lack of a cmr-field element in an
506ejb-relationship-role specifies that the relationship is
507unidirectional in navigability and the entity bean that participates
508in the relationship is "not aware" of the relationship.
509
510Used in: ejb-relation
511
512Example:
513
514<ejb-relation>
515 <ejb-relation-name>Product-LineItem</ejb-relation-name>
516 <ejb-relationship-role>
517 <ejb-relationship-role-name>product-has-lineitems
518 </ejb-relationship-role-name>
519 <multiplicity>One</multiplicity>
520 <relationship-role-source>
521 <ejb-name>ProductEJB</ejb-name>
522 </relationship-role-source>
523 </ejb-relationship-role>
524
525-->
526<!ELEMENT ejb-relationship-role (description?, ejb-relationship-role-name?,
527multiplicity, cascade-delete?, relationship-role-source, cmr-field?)>
528
529<!--
530The ejb-relationship-role-name element defines a name for a role that
531is unique within an ejb-relation. Different relationships can use the
532same name for a role.
533
534Used in: ejb-relationship-role
535-->
536<!ELEMENT ejb-relationship-role-name (#PCDATA)>
537
538<!--
539The enterprise-beans element contains the declarations of one or more
540enterprise beans.
541-->
542<!ELEMENT enterprise-beans (session | entity | message-driven)+>
543
544<!--
545The entity element declares an entity bean. The declaration
546consists of:
547
548 - an optional description
549 - an optional display name
550 - an optional small icon file name
551 - an optional large icon file name
552 - a unique name assigned to the enterprise bean
553 in the deployment descriptor
554 - the names of the entity bean's remote home and remote
555 interfaces, if any
556 - the names of the entity bean's local home and local
557 interfaces, if any
558 - the entity bean's implementation class
559 - the entity bean's persistence management type
560 - the entity bean's primary key class name
561 - an indication of the entity bean's reentrancy
562 - an optional specification of the entity bean's cmp-version
563 - an optional specification of the entity bean's abstract
564 schema name
565 - an optional list of container-managed fields
566 - an optional specification of the primary key field
567 - an optional declaration of the bean's environment entries
568 - an optional declaration of the bean's EJB references
569 - an optional declaration of the bean's local EJB references
570 - an optional declaration of the security role references
571 - an optional declaration of the security identity
572 to be used for the execution of the bean's methods
573 - an optional declaration of the bean's resource manager
574 connection factory references
575 - an optional declaration of the bean's
576 resource environment references
577 - an optional set of query declarations
578 for finder and select methods for an entity
579 bean with cmp-version 2.x.
580
581The optional abstract-schema-name element must be specified for an
582entity bean with container-managed persistence and cmp-version 2.x.
583
584The optional primkey-field may be present in the descriptor if the
585entity's persistence-type is Container.
586
587The optional cmp-version element may be present in the descriptor if
588the entity's persistence-type is Container. If the persistence-type is
589Container and the cmp-version element is not specified, its value
590defaults to 2.x.
591
592The optional home and remote elements must be specified if the entity
593bean cmp-version is 1.x.
594
595The optional home and remote elements must be specified if the entity
596bean has a remote home and remote interface.
597
598The optional local-home and local elements must be specified if the
599entity bean has a local home and local interface.
600
601Either both the local-home and the local elements or both the
602home and the remote elements must be specified.
603
604The optional query elements must be present if the persistence-type is
605Container and the cmp-version is 2.x and query methods other than
606findByPrimaryKey have been defined for the entity bean.
607
608The other elements that are optional are "optional" in the sense that
609they are omitted if the lists represented by them are empty.
610
611At least one cmp-field element must be present in the descriptor if
612the entity's persistence-type is Container and the cmp-version is 1.x,
613and none must not be present if the entity's persistence-type is Bean.
614
615Used in: enterprise-beans
616
617-->
618<!ELEMENT entity (description?, display-name?, small-icon?,
619 large-icon?, ejb-name, home?, remote?, local-home?,
620 local?, ejb-class, persistence-type, prim-key-class,
621 reentrant, cmp-version?, abstract-schema-name?,
622 cmp-field*, primkey-field?, env-entry*, ejb-ref*,
623 ejb-local-ref*, security-role-ref*, security-identity?,
624 resource-ref*, resource-env-ref*, query*)>
625
626<!--
627The env-entry element contains the declaration of an enterprise bean's
628environment entry. The declaration consists of an optional
629description, the name of the environment entry, and an optional
630value. If a value is not specified, one must be supplied
631during deployment.
632
633Used in: entity, message-driven, session
634-->
635<!ELEMENT env-entry (description?, env-entry-name, env-entry-type,
636 env-entry-value?)>
637
638<!--
639The env-entry-name element contains the name of an enterprise bean's
640environment entry. The name is a JNDI name relative to the
641java:comp/env context. The name must be unique within an enterprise bean.
642
643Used in: env-entry
644
645Example:
646
647<env-entry-name>minAmount</env-entry-name>
648-->
649<!ELEMENT env-entry-name (#PCDATA)>
650
651<!--
652The env-entry-type element contains the fully-qualified Java type of
653the environment entry value that is expected by the enterprise bean's
654code.
655
656The following are the legal values of env-entry-type:
657
658 java.lang.Boolean
659 java.lang.Byte
660 java.lang.Character
661 java.lang.String
662 java.lang.Short
663 java.lang.Integer
664 java.lang.Long
665 java.lang.Float
666 java.lang.Double
667
668
669Used in: env-entry
670
671Example:
672
673<env-entry-type>java.lang.Boolean</env-entry-type>
674-->
675<!ELEMENT env-entry-type (#PCDATA)>
676
677<!--
678The env-entry-value element contains the value of an enterprise bean's
679environment entry. The value must be a String that is valid for the
680constructor of the specified type that takes a single String
681parameter, or for java.lang.Character, a single character.
682
683Used in: env-entry
684
685Example:
686
687<env-entry-value>100.00</env-entry-value>
688-->
689<!ELEMENT env-entry-value (#PCDATA)>
690
691<!--
692The exclude list element specifies one or more methods which the
693Assembler marks to be uncallable.
694
695If the method permission relation contains methods that are in the
696exclude list, the Deployer should consider those methods to be
697uncallable.
698
699Used in: assembly-descriptor
700-->
701<!ELEMENT exclude-list (description?, method+)>
702
703<!--
704The field-name element specifies the name of a container managed
705field.
706
707The name of the cmp-field of an entity bean with cmp-version 2.x must
708begin with a lowercase letter. This field is accessed by methods whose
709names consists of the name of the field specified by field-name in
710which the first letter is uppercased, prefixed by "get" or "set".
711
712The name of the cmp-field of an entity bean with cmp-version 1.x must
713denote a public field of the enterprise bean class or one of its
714superclasses.
715
716Used in: cmp-field
717
718Example:
719
720
721 <field-name>firstName</field-Name>
722
723-->
724<!ELEMENT field-name (#PCDATA)>
725
726<!--
727The home element contains the fully-qualified name of the enterprise
728bean's home interface.
729
730Used in: ejb-ref, entity, session
731
732Example:
733
734<home>com.aardvark.payroll.PayrollHome</home>
735-->
736<!ELEMENT home (#PCDATA)>
737
738<!--
739The large-icon element contains the name of a file
740containing a large (32 x 32) icon image. The file
741name is a relative path within the enterprise bean's
742ejb-jar file.
743
744The image may be either in the JPEG or GIF format.
745The icon can be used by tools.
746
747Used in: ejb-jar, entity, message-driven, session
748
749Example:
750
751<large-icon>employee-service-icon32x32.jpg</large-icon>
752-->
753<!ELEMENT large-icon (#PCDATA)>
754
755<!--
756
757The local element contains the fully-qualified name of the
758enterprise bean's local interface.
759
760Used in: ejb-local-ref, entity, session
761
762-->
763<!ELEMENT local (#PCDATA)>
764
765<!--
766
767The local-home element contains the fully-qualified name of the
768enterprise bean's local home interface.
769
770Used in: ejb-local-ref, entity, session
771-->
772<!ELEMENT local-home (#PCDATA)>
773
774<!--
775
776The message-driven element declares a message-driven bean. The
777declaration consists of:
778
779 - an optional description
780 - an optional display name
781 - an optional small icon file name
782 - an optional large icon file name
783 - a name assigned to the enterprise bean in
784 the deployment descriptor
785 - the message-driven bean's implementation class
786 - the message-driven bean's transaction management type
787 - an optional declaration of the message-driven bean's
788 message selector
789 - an optional declaration of the
790 acknowledgment mode for the message-driven bean
791 if bean-managed transaction demarcation is used
792 - an optional declaration of the
793 intended destination type of the message-driven bean
794 - an optional declaration of the bean's environment entries
795 - an optional declaration of the bean's EJB references
796 - an optional declaration of the bean's local EJB references
797 - an optional declaration of the security
798 identity to be used for the execution of the bean's methods
799 - an optional declaration of the bean's resource manager
800 connection factory references
801 - an optional declaration of the bean's resource
802 environment references.
803
804Used in: enterprise-beans
805-->
806<!ELEMENT message-driven (description?, display-name?, small-icon?,
807 large-icon?, ejb-name, ejb-class, transaction-type,
808 message-selector?, acknowledge-mode?,
809 message-driven-destination?, env-entry*, ejb-ref*,
810 ejb-local-ref*, security-identity?, resource-ref*,
811 resource-env-ref*)>
812
813<!--
814The message-driven-destination element provides advice to the Deployer
815as to whether a message-driven bean is intended for a Queue or a
816Topic. The declaration consists of: the type of the message-driven
817bean's intended destination and an optional declaration of whether a
818durable or non-durable subscription should be used if the
819destination-type is javax.jms.Topic.
820
821Used in: message-driven
822-->
823<!ELEMENT message-driven-destination (destination-type,
824subscription-durability?)>
825
826<!--
827The message-selector element is used to specify the JMS message
828selector to be used in determining which messages a message-driven
829bean is to receive.
830
831Example:
832<message-selector>JMSType = `car' AND color = `blue' AND weight &gt; 2500
833</message-selector>
834
835Used in: message-driven
836-->
837<!ELEMENT message-selector (#PCDATA)>
838
839<!--
840
841The method element is used to denote a method of an enterprise
842bean's home or component interface, or, in the case of a message-driven
843bean, the bean's onMessage method, or a set of methods. The ejb-name
844element must be the name of one of the enterprise beans declared in
845the deployment descriptor; the optional method-intf element allows to
846distinguish between a method with the same signature that is multiply
847defined across in both the home and component interfaces; the
848method-name element specifies the method name; and the optional
849method-params elements identify a single method among multiple methods
850with an overloaded method name.
851
852There are three possible styles of the method element syntax:
853
8541.
855<method>
856 <ejb-name>EJBNAME</ejb-name>
857 <method-name>*</method-name>
858</method>
859
860 This style is used to refer to all the methods of the specified
861 enterprise bean's home and component interfaces.
862
8632.
864<method>
865 <ejb-name>EJBNAME</ejb-name>
866 <method-name>METHOD</method-name>
867</method>>
868
869 This style is used to refer to the specified method of the
870 specified enterprise bean. If there are multiple methods with
871 the same overloaded name, the element of this style refers to
872 all the methods with the overloaded name.
873
874
8753.
876<method>
877 <ejb-name>EJBNAME</ejb-name>
878 <method-name>METHOD</method-name>
879 <method-params>
880 <method-param>PARAM-1</method-param>
881 <method-param>PARAM-2</method-param>
882 ...
883 <method-param>PARAM-n</method-param>
884 </method-params>
885<method>
886
887
888 This style is used to refer to a single method within a set of
889 methods with an overloaded name. PARAM-1 through PARAM-n are the
890 fully-qualified Java types of the method's input parameters (if
891 the method has no input arguments, the method-params element
892 contains no method-param elements). Arrays are specified by the
893 array element's type, followed by one or more pair of square
894 brackets (e.g. int[][]). If there are multiple methods with the
895 same overloaded name, this style refers to all of the overloaded
896 methods.
897
898
899Used in: container-transaction, exclude-list, method-permission
900
901Examples:
902
903Style 1: The following method element refers to all the methods of
904the EmployeeService bean's home and component interfaces:
905
906<method>
907 <ejb-name>EmployeeService</ejb-name>
908 <method-name>*</method-name>
909</method>
910
911Style 2: The following method element refers to all the create
912methods of the EmployeeService bean's home interface(s).
913
914<method>
915 <ejb-name>EmployeeService</ejb-name>
916 <method-name>create</method-name>
917</method>
918
919
920Style 3: The following method element refers to the
921create(String firstName, String LastName) method of the
922EmployeeService bean's home interface(s).
923
924<method>
925 <ejb-name>EmployeeService</ejb-name>
926 <method-name>create</method-name>
927 <method-params>
928 <method-param>java.lang.String</method-param>
929 <method-param>java.lang.String</method-param>
930 </method-params>
931</method>
932
933
934The following example illustrates a Style 3 element with
935more complex parameter types. The method
936foobar(char s, int i, int[] iar, mypackage.MyClass mycl,
937mypackage.MyClass[][] myclaar) would be specified as:
938
939<method>
940 <ejb-name>EmployeeService</ejb-name>
941 <method-name>foobar</method-name>
942 <method-params>
943 <method-param>char</method-param>
944 <method-param>int</method-param>
945 <method-param>int[]</method-param>
946 <method-param>mypackage.MyClass</method-param>
947 <method-param>mypackage.MyClass[][]</method-param>
948 </method-params>
949</method>
950
951
952The optional method-intf element can be used when it becomes necessary
953to differentiate between a method that is multiply defined across the
954enterprise bean's home and component interfaces with the same name and
955signature.
956
957
958For example, the method element
959
960<method>
961 <ejb-name>EmployeeService</ejb-name>
962 <method-intf>Remote</method-intf>
963 <method-name>create</method-name>
964 <method-params>
965 <method-param>java.lang.String</method-param>
966 <method-param>java.lang.String</method-param>
967 </method-params>
968</method>
969
970
971can be used to differentiate the create(String, String) method defined
972in the remote interface from the create(String, String) method defined
973in the remote home interface, which would be defined as
974
975
976<method>
977 <ejb-name>EmployeeService</ejb-name>
978 <method-intf>Home</method-intf>
979 <method-name>create</method-name>
980 <method-params>
981 <method-param>java.lang.String</method-param>
982 <method-param>java.lang.String</method-param>
983 </method-params>
984</method>
985
986and the create method that is defined in the local home interface
987which would be defined as
988
989<method>
990 <ejb-name>EmployeeService</ejb-name>
991 <method-intf>LocalHome</method-intf>
992 <method-name>create</method-name>
993 <method-params>
994 <method-param>java.lang.String</method-param>
995 <method-param>java.lang.String</method-param>
996 </method-params>
997</method>
998
999
1000The method-intf element can be used with all three Styles of the
1001method element usage. For example, the following method element
1002example could be used to refer to all the methods of the
1003EmployeeService bean's remote home interface.
1004
1005
1006<method>
1007 <ejb-name>EmployeeService</ejb-name>
1008 <method-intf>Home</method-intf>
1009 <method-name>*</method-name>
1010</method>
1011
1012-->
1013<!ELEMENT method (description?, ejb-name, method-intf?, method-name,
1014method-params?)>
1015
1016<!--
1017
1018The method-intf element allows a method element to differentiate
1019between the methods with the same name and signature that are multiply
1020defined across the component and home interfaces (e.g, in both an
1021enterprise bean's remote and local interfaces; in both an enterprise bean's
1022home and remote interfaces, etc.)
1023
1024The method-intf element must be one of the following:
1025
1026 <method-intf>Home</method-intf>
1027 <method-intf>Remote</method-intf>
1028 <method-intf>LocalHome</method-intf>
1029 <method-intf>Local</method-intf>
1030
1031Used in: method
1032-->
1033<!ELEMENT method-intf (#PCDATA)>
1034
1035<!--
1036The method-name element contains a name of an enterprise bean method
1037or the asterisk (*) character. The asterisk is used when the element
1038denotes all the methods of an enterprise bean's component and home
1039interfaces.
1040
1041Used in: method, query-method
1042-->
1043<!ELEMENT method-name (#PCDATA)>
1044
1045<!--
1046The method-param element contains the fully-qualified Java type name
1047of a method parameter.
1048
1049Used in: method-params
1050-->
1051<!ELEMENT method-param (#PCDATA)>
1052
1053<!--
1054The method-params element contains a list of the fully-qualified Java
1055type names of the method parameters.
1056
1057Used in: method, query-method
1058-->
1059<!ELEMENT method-params (method-param*)>
1060
1061<!--
1062
1063The method-permission element specifies that one or more security
1064roles are allowed to invoke one or more enterprise bean methods. The
1065method-permission element consists of an optional description, a list
1066of security role names or an indicator to state that the method is
1067unchecked for authorization, and a list of method elements.
1068
1069The security roles used in the method-permission element must be
1070defined in the security-role elements of the deployment descriptor,
1071and the methods must be methods defined in the enterprise bean's
1072component and/or home interfaces.
1073
1074
1075Used in: assembly-descriptor
1076-->
1077<!ELEMENT method-permission (description?, (role-name+|unchecked), method+)>
1078
1079<!--
1080The multiplicity element describes the multiplicity of the role that
1081participates in a relation.
1082
1083The multiplicity element must be one of the two following:
1084
1085 <multiplicity>One</multiplicity>
1086 <multiplicity>Many</multiplicity>
1087
1088Used in: ejb-relationship-role
1089-->
1090<!ELEMENT multiplicity (#PCDATA)>
1091
1092<!--
1093The persistence-type element specifies an entity bean's persistence
1094management type.
1095
1096The persistence-type element must be one of the two following:
1097
1098 <persistence-type>Bean</persistence-type>
1099 <persistence-type>Container</persistence-type>
1100
1101Used in: entity
1102-->
1103<!ELEMENT persistence-type (#PCDATA)>
1104
1105<!--
1106The prim-key-class element contains the fully-qualified name of an
1107entity bean's primary key class.
1108
1109If the definition of the primary key class is deferred to deployment
1110time, the prim-key-class element should specify java.lang.Object.
1111
1112Used in: entity
1113
1114Examples:
1115
1116 <prim-key-class>java.lang.String</prim-key-class>
1117
1118 <prim-key-class>com.wombat.empl.EmployeeID</prim-key-class>
1119
1120 <prim-key-class>java.lang.Object</prim-key-class>
1121
1122-->
1123<!ELEMENT prim-key-class (#PCDATA)>
1124
1125<!--
1126The primkey-field element is used to specify the name of the primary
1127key field for an entity with container-managed persistence.
1128
1129The primkey-field must be one of the fields declared in the cmp-field
1130element, and the type of the field must be the same as the primary key
1131type.
1132
1133The primkey-field element is not used if the primary key maps to
1134multiple container-managed fields (i.e. the key is a compound key). In
1135this case, the fields of the primary key class must be public, and
1136their names must correspond to the field names of the entity bean
1137class that comprise the key.
1138
1139Used in: entity
1140
1141Example:
1142
1143 <primkey-field>EmployeeId</primkey-field>
1144
1145-->
1146<!ELEMENT primkey-field (#PCDATA)>
1147
1148<!--
1149The query element is used to specify a finder or select query. It
1150contains
1151 - an optional description of the query
1152 - the specification of the finder or select
1153 method it is used by
1154 - an optional specification of the result type mapping, if
1155 the query is for a select method and entity objects are
1156 returned.
1157 - the EJB QL query string that defines the query.
1158
1159Queries that are expressible in EJB QL must use the ejb-ql element to
1160specify the query. If a query is not expressible in EJB QL, the
1161description element should be used to describe the semantics of the
1162query and the ejb-ql element should be empty.
1163
1164The result-type-mapping is an optional element. It can only be present
1165if the query-method specifies a select method that returns entity
1166objects. The default value for the result-type-mapping element is
1167"Local".
1168
1169
1170Used in: entity
1171-->
1172<!ELEMENT query (description?, query-method, result-type-mapping?, ejb-ql)>
1173
1174<!--
1175The query-method element is used to specify the method for a finder or
1176select query.
1177
1178The method-name element specifies the name of a finder or select
1179method in the entity bean's implementation class.
1180
1181Each method-param must be defined for a query-method using the
1182method-params element.
1183
1184Used in: query
1185
1186Example:
1187
1188<query>
1189 <description>Method finds large orders</description>
1190 <query-method>
1191 <method-name>findLargeOrders</method-name>
1192 <method-params></method-params>
1193 </query-method>
1194 <ejb-ql>SELECT OBJECT(o) FROM Order o WHERE o.amount &gt; 1000</ejb-ql>
1195</query>
1196
1197-->
1198<!ELEMENT query-method (method-name, method-params)>
1199
1200<!--
1201The reentrant element specifies whether an entity bean is reentrant or
1202not.
1203
1204The reentrant element must be one of the two following:
1205
1206 <reentrant>True</reentrant>
1207 <reentrant>False</reentrant>
1208
1209Used in: entity
1210-->
1211<!ELEMENT reentrant (#PCDATA)>
1212
1213<!--
1214
1215The relationship-role-source element designates the source of a role
1216that participates in a relationship. A relationship-role-source
1217element uniquely identifies an entity bean.
1218
1219Used in: ejb-relationship-role
1220-->
1221<!ELEMENT relationship-role-source (description?, ejb-name)>
1222
1223<!--
1224The relationships element describes the relationships in which
1225entity beans with container-managed persistence participate. The
1226relationships element contains an optional description; and a list of
1227ejb-relation elements, which specify the container managed
1228relationships.
1229
1230
1231Used in: ejb-jar
1232-->
1233<!ELEMENT relationships (description?, ejb-relation+)>
1234
1235<!--
1236The remote element contains the fully-qualified name of the enterprise
1237bean's remote interface.
1238
1239Used in: ejb-ref, entity, session
1240
1241Example:
1242
1243<remote>com.wombat.empl.EmployeeService</remote>
1244-->
1245<!ELEMENT remote (#PCDATA)>
1246
1247<!--
1248The res-auth element specifies whether the enterprise bean code signs
1249on programmatically to the resource manager, or whether the Container
1250will sign on to the resource manager on behalf of the enterprise bean. In the
1251latter case, the Container uses information that is supplied by the
1252Deployer.
1253
1254The value of this element must be one of the two following:
1255
1256 <res-auth>Application</res-auth>
1257 <res-auth>Container</res-auth>
1258
1259Used in: resource-ref
1260-->
1261<!ELEMENT res-auth (#PCDATA)>
1262
1263<!--
1264The res-ref-name element specifies the name of a resource manager
1265connection factory reference. The name is a JNDI name relative to the
1266java:comp/env context. The name must be unique within an enterprise bean.
1267
1268Used in: resource-ref
1269-->
1270<!ELEMENT res-ref-name (#PCDATA)>
1271
1272<!--
1273The res-sharing-scope element specifies whether connections obtained
1274through the given resource manager connection factory reference can be
1275shared. The value of this element, if specified, must be one of the
1276two following:
1277
1278 <res-sharing-scope>Shareable</res-sharing-scope>
1279 <res-sharing-scope>Unshareable</res-sharing-scope>
1280
1281The default value is Shareable.
1282
1283Used in: resource-ref
1284-->
1285<!ELEMENT res-sharing-scope (#PCDATA)>
1286
1287<!--
1288The res-type element specifies the type of the data source. The type
1289is specified by the fully qualified Java language class or interface
1290expected to be implemented by the data source.
1291
1292Used in: resource-ref
1293-->
1294<!ELEMENT res-type (#PCDATA)>
1295
1296<!--
1297The resource-env-ref element contains a declaration of an enterprise bean's
1298reference to an administered object associated with a resource
1299in the enterprise bean's environment. It consists of an optional
1300description, the resource environment reference name, and an
1301indication of the resource environment reference type expected by
1302the enterprise bean code.
1303
1304Used in: entity, message-driven, session
1305
1306Example:
1307
1308<resource-env-ref>
1309 <resource-env-ref-name>jms/StockQueue</resource-env-ref-name>
1310 <resource-env-ref-type>javax.jms.Queue</resource-env-ref-type>
1311</resource-env-ref>
1312-->
1313<!ELEMENT resource-env-ref (description?, resource-env-ref-name,
1314 resource-env-ref-type)>
1315
1316<!--
1317The resource-env-ref-name element specifies the name of a resource
1318environment reference; its value is the environment entry name used in
1319the enterprise bean code. The name is a JNDI name relative to the
1320java:comp/env context and must be unique within an enterprise bean.
1321
1322Used in: resource-env-ref
1323-->
1324<!ELEMENT resource-env-ref-name (#PCDATA)>
1325
1326<!--
1327The resource-env-ref-type element specifies the type of a resource
1328environment reference. It is the fully qualified name of a Java
1329language class or interface.
1330
1331Used in: resource-env-ref
1332-->
1333<!ELEMENT resource-env-ref-type (#PCDATA)>
1334
1335<!--
1336The resource-ref element contains a declaration of an enterprise bean's
1337reference to an external resource. It consists of an optional
1338description, the resource manager connection factory reference name,
1339the indication of the resource manager connection factory type
1340expected by the enterprise bean code, the type of authentication
1341(Application or Container), and an optional specification of the
1342shareability of connections obtained from the resource (Shareable or
1343Unshareable).
1344
1345Used in: entity, message-driven, session
1346
1347Example:
1348
1349 <resource-ref>
1350 <res-ref-name>jdbc/EmployeeAppDB</res-ref-name>
1351 <res-type>javax.sql.DataSource</res-type>
1352 <res-auth>Container</res-auth>
1353 <res-sharing-scope>Shareable</res-sharing-scope>
1354 </resource-ref>
1355-->
1356<!ELEMENT resource-ref (description?, res-ref-name, res-type, res-auth,
1357 res-sharing-scope?)>
1358
1359<!--
1360
1361The result-type-mapping element is used in the query element to specify
1362whether an abstract schema type returned by a query for a select method
1363is to be mapped to an EJBLocalObject or EJBObject type.
1364
1365The result-type-mapping element must be one of the following:
1366
1367 <result-type-mapping>Local</result-type-mapping>
1368 <result-type-mapping>Remote</result-type-mapping>
1369
1370Used in: query
1371-->
1372<!ELEMENT result-type-mapping (#PCDATA)>
1373
1374<!--
1375The role-link element is a reference to a defined security role. The
1376role-link element must contain the name of one of the security roles
1377defined in the security-role elements.
1378
1379Used in: security-role-ref
1380-->
1381<!ELEMENT role-link (#PCDATA)>
1382
1383<!--
1384The role-name element contains the name of a security role.
1385
1386The name must conform to the lexical rules for an NMTOKEN.
1387
1388Used in: method-permission, run-as, security-role, security-role-ref
1389-->
1390<!ELEMENT role-name (#PCDATA)>
1391
1392<!--
1393The run-as element specifies the run-as identity to be used for the
1394execution of the enterprise bean. It contains an optional description, and
1395the name of a security role.
1396
1397Used in: security-identity
1398-->
1399<!ELEMENT run-as (description?, role-name)>
1400
1401<!--
1402
1403The security-identity element specifies whether the caller's
1404security identity is to be used for the execution of the methods of
1405the enterprise bean or whether a specific run-as identity is to be
1406used. It contains an optional description and a specification of the
1407security identity to be used.
1408
1409Used in: entity, message-driven, session
1410-->
1411<!ELEMENT security-identity (description?, (use-caller-identity|run-as))>
1412
1413<!--
1414The security-role element contains the definition of a security
1415role. The definition consists of an optional description of the
1416security role, and the security role name.
1417
1418Used in: assembly-descriptor
1419
1420Example:
1421
1422 <security-role>
1423 <description>
1424 This role includes all employees who are authorized
1425 to access the employee service application.
1426 </description>
1427 <role-name>employee</role-name>
1428 </security-role>
1429-->
1430<!ELEMENT security-role (description?, role-name)>
1431
1432<!--
1433The security-role-ref element contains the declaration of a security
1434role reference in the enterprise bean's code. The declaration consists
1435of an optional description, the security role name used in the code,
1436and an optional link to a security role. If the security role is not
1437specified, the Deployer must choose an appropriate security role.
1438
1439The value of the role-name element must be the String used as the
1440parameter to the EJBContext.isCallerInRole(String roleName) method
1441or the HttpServletRequest.isUserInRole(String role) method.
1442
1443Used in: entity, session
1444
1445-->
1446<!ELEMENT security-role-ref (description?, role-name, role-link?)>
1447
1448<!--
1449The session element declares an session bean. The declaration consists
1450of:
1451 - an optional description
1452 - an optional display name
1453 - an optional small icon file name
1454 - an optional large icon file name
1455 - a name assigned to the enterprise bean
1456 in the deployment description
1457 - the names of the session bean's remote home and
1458 remote interfaces, if any
1459 - the names of the session bean's local home and
1460 local interfaces, if any
1461 - the session bean's implementation class
1462 - the session bean's state management type
1463 - the session bean's transaction management type
1464 - an optional declaration of the bean's environment entries
1465 - an optional declaration of the bean's EJB references
1466 - an optional declaration of the bean's local EJB references
1467 - an optional declaration of the security role references
1468 - an optional declaration of the security identity to be
1469 used for the execution of the bean's methods
1470 - an optional declaration of the bean's resource manager
1471 connection factory references
1472 - an optional declaration of the bean's resource environment
1473 references.
1474
1475The elements that are optional are "optional" in the sense that they
1476are omitted when if lists represented by them are empty.
1477
1478Either both the local-home and the local elements or both the
1479home and the remote elements must be specified for the session bean.
1480
1481Used in: enterprise-beans
1482-->
1483<!ELEMENT session (description?, display-name?, small-icon?,
1484large-icon?, ejb-name, home?, remote?, local-home?, local?,
1485ejb-class, session-type, transaction-type, env-entry*, ejb-ref*,
1486ejb-local-ref*, security-role-ref*, security-identity?, resource-ref*,
1487resource-env-ref*)>
1488
1489<!--
1490The session-type element describes whether the session bean is a
1491stateful session or stateless session.
1492
1493The session-type element must be one of the two following:
1494
1495 <session-type>Stateful</session-type>
1496 <session-type>Stateless</session-type>
1497-->
1498<!ELEMENT session-type (#PCDATA)>
1499
1500<!--
1501The small-icon element contains the name of a file
1502containing a small (16 x 16) icon image. The file
1503name is a relative path within the enterprise bean's
1504ejb-jar file.
1505
1506The image may be either in the JPEG or GIF format.
1507The icon can be used by tools.
1508
1509Used in: ejb-jar, entity, message-driven, session
1510
1511Example:
1512
1513<small-icon>employee-service-icon16x16.jpg</small-icon>
1514-->
1515<!ELEMENT small-icon (#PCDATA)>
1516
1517<!--
1518The subscription-durability element specifies whether a JMS topic
1519subscription is intended to be durable or nondurable.
1520
1521The subscription-durability element must be one of the two following:
1522
1523 <subscription-durability>Durable</subscription-durability>
1524 <subscription-durability>NonDurable</subscription-durability>
1525
1526Used in: message-driven-destination
1527-->
1528<!ELEMENT subscription-durability (#PCDATA)>
1529
1530<!--
1531The trans-attribute element specifies how the container must manage
1532the transaction boundaries when delegating a method invocation to an
1533enterprise bean's business method.
1534
1535The value of trans-attribute must be one of the following:
1536
1537
1538 <trans-attribute>NotSupported</trans-attribute>
1539 <trans-attribute>Supports</trans-attribute>
1540 <trans-attribute>Required</trans-attribute>
1541 <trans-attribute>RequiresNew</trans-attribute>
1542 <trans-attribute>Mandatory</trans-attribute>
1543 <trans-attribute>Never</trans-attribute>
1544
1545Used in: container-transaction
1546-->
1547<!ELEMENT trans-attribute (#PCDATA)>
1548
1549<!--
1550The transaction-type element specifies an enterprise bean's
1551transaction management type.
1552
1553The transaction-type element must be one of the two following:
1554
1555 <transaction-type>Bean</transaction-type>
1556 <transaction-type>Container</transaction-type>
1557
1558Used in: message-driven, session
1559-->
1560<!ELEMENT transaction-type (#PCDATA)>
1561
1562<!--
1563The unchecked element specifies that a method is not checked for authorization
1564by the container prior to invocation of the method.
1565
1566Used in: method-permission
1567-->
1568<!ELEMENT unchecked EMPTY>
1569
1570<!--
1571
1572The use-caller-identity element specifies that the caller's security
1573identity be used as the security identity for the execution of the
1574enterprise bean's methods.
1575
1576Used in: security-identity
1577-->
1578<!ELEMENT use-caller-identity EMPTY>
1579
1580<!--
1581The ID mechanism is to allow tools that produce additional deployment
1582information (i.e., information beyond the standard deployment
1583descriptor information) to store the non-standard information in a
1584separate file, and easily refer from these tool-specific files to the
1585information in the standard deployment descriptor.
1586
1587Tools are not allowed to add the non-standard information into the
1588standard deployment descriptor.
1589-->
1590
1591<!ATTLIST abstract-schema-name id ID #IMPLIED>
1592<!ATTLIST acknowledge-mode id ID #IMPLIED>
1593<!ATTLIST assembly-descriptor id ID #IMPLIED>
1594<!ATTLIST cascade-delete id ID #IMPLIED>
1595<!ATTLIST cmp-field id ID #IMPLIED>
1596<!ATTLIST cmp-version id ID #IMPLIED>
1597<!ATTLIST cmr-field id ID #IMPLIED>
1598<!ATTLIST cmr-field-name id ID #IMPLIED>
1599<!ATTLIST cmr-field-type id ID #IMPLIED>
1600<!ATTLIST container-transaction id ID #IMPLIED>
1601<!ATTLIST description id ID #IMPLIED>
1602<!ATTLIST destination-type id ID #IMPLIED>
1603<!ATTLIST display-name id ID #IMPLIED>
1604<!ATTLIST ejb-class id ID #IMPLIED>
1605<!ATTLIST ejb-client-jar id ID #IMPLIED>
1606<!ATTLIST ejb-jar id ID #IMPLIED>
1607<!ATTLIST ejb-link id ID #IMPLIED>
1608<!ATTLIST ejb-local-ref id ID #IMPLIED>
1609<!ATTLIST ejb-name id ID #IMPLIED>
1610<!ATTLIST ejb-ql id ID #IMPLIED>
1611<!ATTLIST ejb-ref id ID #IMPLIED>
1612<!ATTLIST ejb-ref-name id ID #IMPLIED>
1613<!ATTLIST ejb-ref-type id ID #IMPLIED>
1614<!ATTLIST ejb-relation id ID #IMPLIED>
1615<!ATTLIST ejb-relation-name id ID #IMPLIED>
1616<!ATTLIST ejb-relationship-role id ID #IMPLIED>
1617<!ATTLIST ejb-relationship-role-name id ID #IMPLIED>
1618<!ATTLIST enterprise-beans id ID #IMPLIED>
1619<!ATTLIST entity id ID #IMPLIED>
1620<!ATTLIST env-entry id ID #IMPLIED>
1621<!ATTLIST env-entry-name id ID #IMPLIED>
1622<!ATTLIST env-entry-type id ID #IMPLIED>
1623<!ATTLIST env-entry-value id ID #IMPLIED>
1624<!ATTLIST exclude-list id ID #IMPLIED>
1625<!ATTLIST field-name id ID #IMPLIED>
1626<!ATTLIST home id ID #IMPLIED>
1627<!ATTLIST large-icon id ID #IMPLIED>
1628<!ATTLIST local id ID #IMPLIED>
1629<!ATTLIST local-home id ID #IMPLIED>
1630<!ATTLIST message-driven id ID #IMPLIED>
1631<!ATTLIST message-driven-destination id ID #IMPLIED>
1632<!ATTLIST message-selector id ID #IMPLIED>
1633<!ATTLIST method id ID #IMPLIED>
1634<!ATTLIST method-intf id ID #IMPLIED>
1635<!ATTLIST method-name id ID #IMPLIED>
1636<!ATTLIST method-param id ID #IMPLIED>
1637<!ATTLIST method-params id ID #IMPLIED>
1638<!ATTLIST method-permission id ID #IMPLIED>
1639<!ATTLIST multiplicity id ID #IMPLIED>
1640<!ATTLIST persistence-type id ID #IMPLIED>
1641<!ATTLIST prim-key-class id ID #IMPLIED>
1642<!ATTLIST primkey-field id ID #IMPLIED>
1643<!ATTLIST query id ID #IMPLIED>
1644<!ATTLIST query-method id ID #IMPLIED>
1645<!ATTLIST reentrant id ID #IMPLIED>
1646<!ATTLIST relationship-role-source id ID #IMPLIED>
1647<!ATTLIST relationships id ID #IMPLIED>
1648<!ATTLIST remote id ID #IMPLIED>
1649<!ATTLIST res-auth id ID #IMPLIED>
1650<!ATTLIST res-ref-name id ID #IMPLIED>
1651<!ATTLIST res-sharing-scope id ID #IMPLIED>
1652<!ATTLIST res-type id ID #IMPLIED>
1653<!ATTLIST resource-env-ref id ID #IMPLIED>
1654<!ATTLIST resource-env-ref-name id ID #IMPLIED>
1655<!ATTLIST resource-env-ref-type id ID #IMPLIED>
1656<!ATTLIST resource-ref id ID #IMPLIED>
1657<!ATTLIST result-type-mapping id ID #IMPLIED>
1658<!ATTLIST role-link id ID #IMPLIED>
1659<!ATTLIST role-name id ID #IMPLIED>
1660<!ATTLIST run-as id ID #IMPLIED>
1661<!ATTLIST security-identity id ID #IMPLIED>
1662<!ATTLIST security-role id ID #IMPLIED>
1663<!ATTLIST security-role-ref id ID #IMPLIED>
1664<!ATTLIST session id ID #IMPLIED>
1665<!ATTLIST session-type id ID #IMPLIED>
1666<!ATTLIST small-icon id ID #IMPLIED>
1667<!ATTLIST subscription-durability id ID #IMPLIED>
1668<!ATTLIST trans-attribute id ID #IMPLIED>
1669<!ATTLIST transaction-type id ID #IMPLIED>
1670<!ATTLIST unchecked id ID #IMPLIED>
1671<!ATTLIST use-caller-identity id ID #IMPLIED>