ejb-jar_3_0.xsd 89 KB

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