home *** CD-ROM | disk | FTP | other *** search
/ Internet Magazine 2003 October / INTERNET108.ISO / pc / software / windows / building / xmlspy / xmlspyentcomplete5.exe / Data1.cab / _D4E1F320E4394A38BE6532A901E2F5AE < prev    next >
Encoding:
Text File  |  2002-08-22  |  54.2 KB  |  1,721 lines

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