home *** CD-ROM | disk | FTP | other *** search
/ Visual Cafe 4.0 (Enterprise Edition) / WGS_VCAFE40.iso / WebGain51sp2 / weblogic510sp2.jar / weblogic / ejb / deployment / xml / weblogic-ejb-jar.dtd
Text File  |  2000-05-08  |  19KB  |  699 lines

  1. <!--
  2. This is the DTD for the EJB deployment parameters that are specific to the 
  3. WebLogic server in WebLogic 5.1.0.
  4.  
  5. Copyright (c) 1999-2000 by BEA Systems, Inc. All Rights Reserved.
  6. -->
  7.  
  8.  
  9.  
  10. <!--
  11. The caching-descriptor element is used to specify various options for the 
  12. caching of a bean in the WebLogic Server.
  13.  
  14. Used in: weblogic-enterprise-bean
  15. -->
  16. <!ELEMENT caching-descriptor (    
  17.     max-beans-in-free-pool?, 
  18.     initial-beans-in-free-pool?, 
  19.     max-beans-in-cache?,
  20.     idle-timeout-seconds?,
  21.     cache-strategy?,
  22.     passivation-strategy?,
  23.     read-timeout-seconds?)
  24. >
  25.  
  26.  
  27.  
  28. <!--
  29. The clustering-descriptor is used to specify various options for how a bean
  30. will be replicated in a WebLogic cluster
  31.  
  32. Used in: weblogic-enterprise-bean
  33. -->
  34. <!ELEMENT clustering-descriptor (
  35.     home-is-clusterable?,
  36.     home-load-algorithm?,
  37.     home-call-router-class-name?,
  38.     stateless-bean-is-clusterable?,
  39.     stateless-bean-load-algorithm?,
  40.     stateless-bean-call-router-class-name?,
  41.     stateless-bean-methods-are-idempotent?)
  42. >
  43.  
  44.  
  45. <!--
  46. The value of db-is-shared must be "True" or "False".
  47.  
  48. This parameter applies only to entity beans using container-managed 
  49. persistence. If the value is set to "False" the container will assume that it 
  50. has exclusive access to the bean data in the persistence store. If it is set 
  51. to "True" the bean will assume that the bean data could be modified between
  52. transactions and will therefore reload data at the beginning of each 
  53. transaction.
  54. -->
  55. <!ELEMENT db-is-shared (#PCDATA)>
  56.  
  57.    
  58. <!--
  59. Applicable to entity beans only (both container- and bean-managed).
  60. This optional optimization affects when changes to a bean's state
  61. propogated to the persistent store. If this is set to "True" (which is
  62. the default) updates of the persistent store of all beans in the
  63. transaction will be performed just before the end of the transaction.
  64. If this is set to "False" the pstore update of a bean will be
  65. performed at the conclusion of each method invoke.
  66.  
  67. Used in: persistence-descriptor
  68. -->
  69. <!ELEMENT delay-updates-until-end-of-tx (#PCDATA)>
  70.  
  71.  
  72.  
  73. <!-- 
  74. The description element is used to provide text describing the parent element.
  75.  
  76. Used in: weblogic-ejb-jar 
  77. -->
  78. <!ELEMENT description (#PCDATA)>
  79.  
  80.  
  81.  
  82. <!--
  83. The ejb-name element specifies an enterprise bean's name. This name is
  84. assigned by the ejb-jar file producer to name the enterprise bean in
  85. the ejb-jar file's deployment descriptor. The name must be unique
  86. among the names of the enterprise beans in the same ejb-jar file. The
  87. enterprise bean code does not depend on the name; therefore the name
  88. can be changed during the application-assembly process without
  89. breaking the enterprise bean's function. There is no architected
  90. relationship between the ejb-name in the deployment descriptor and the
  91. JNDI name that the Deployer will assign to the enterprise bean's home.
  92. The name must conform to the lexical rules for an NMTOKEN.
  93.  
  94. Used in: weblogic-enterprise-bean.
  95.  
  96. Example:
  97. <ejb-name>EmployeeService</ejb-name>
  98. -->
  99. <!ELEMENT ejb-name (#PCDATA)>
  100.  
  101. <!--
  102. The ejb-ref-name element contains the name of an EJB reference. The
  103. EJB reference is an entry in the enterprise bean's environment.
  104.  
  105. Used in: ejb-reference-description
  106.  
  107. Example: 
  108. <ejb-ref-name>ejb/EmplRecords</ejb-ref-name>
  109.  
  110. -->
  111. <!ELEMENT ejb-ref-name (#PCDATA)>
  112.  
  113.  
  114. <!--
  115. The ejb-reference-description is used to map the JNDI name in the WebLogic 
  116. server of an EJB that is referenced by the bean in an ejb-reference.
  117.  
  118.  Used in: reference-descriptor
  119.  
  120.  Example:
  121.      <ejb-reference-description>
  122.     <ejb-ref-name>
  123.       AdminBean
  124.     </ejb-ref-name>
  125.         <jndi-name>
  126.       payroll.AdminBean
  127.         </jndi-name>
  128.      </ejb-reference-description>
  129. -->
  130. <!ELEMENT ejb-reference-description (ejb-ref-name, jndi-name)>
  131.  
  132.  
  133. <!--
  134. By default, parameters to EJB methods are copied (pass by value) in 
  135. accordance with the EJB 1.1 specification.  Pass by value is always
  136. necessary when the EJB is called remotely (not from within the server).
  137. By setting enable-call-by-reference to "True", EJB methods called from
  138. within the same server will pass arguments by reference.  This increases
  139. the performance of method invocation since parameters are not copied.
  140.  
  141. The value of enable-call-by-reference must be "True" or "False".
  142.  
  143. Used in: weblogic-enterprise-bean
  144. -->
  145. <!ELEMENT enable-call-by-reference (#PCDATA)>
  146.  
  147.  
  148. <!--
  149. Applicable to entity beans only (both container- and bean-managed).
  150. This optional optimization affects whether the bean is loaded immediately
  151. into the cache (followed by invoke of ejbLoad) after a call to 
  152. a finder returns a reference to a bean.
  153.  
  154. If this is set to "True", the bean will immediately be loaded into the cache
  155. if a reference to a bean is returned by the finder. If this is set to 
  156. "False", the bean will not be loaded into the cache until the first invoke
  157. of the bean.
  158.  
  159. The default value is "False", which supports the behavior indicated by the 
  160. EJB 1.1 specification.
  161.  
  162. Used in: persistence-descriptor
  163. -->
  164.  
  165. <!ELEMENT finders-call-ejbload (#PCDATA)>
  166.  
  167.  
  168.  
  169. <!--
  170. The valid values of the home-is-clusterable parameter are 
  171. "True" or "False."
  172.  
  173. If "True," this bean can be deployed from multiple servers
  174. in a cluster.  Calls to the home stub will be load-balanced
  175. between the servers on which this bean is deployed, and if
  176. a server hosting the bean is unreachable, the call will
  177. automatically failover to another server hosting the bean.
  178.  
  179. Used in: clustering-descriptor
  180. -->
  181. <!ELEMENT home-is-clusterable (#PCDATA)>
  182.  
  183.  
  184.  
  185. <!--
  186. The home-load-algorithm specifies the algorithm to use for load-balancing 
  187. between replicas of this home.  If this property is not specified, the 
  188. algorithm specified by the server property 
  189. weblogic.cluster.defaultLoadAlgorithm will be used.  
  190.  
  191. The value of this element must be one of the following:
  192.   RoundRobin
  193.   Random
  194.   WeightBased
  195.  
  196. Used in: clustering-descriptor
  197. -->
  198. <!ELEMENT home-load-algorithm (#PCDATA)>
  199.  
  200.  
  201. <!--
  202. The home-call-router-class-name specifies a custom class to be used for 
  203. routing home method calls.  This class must implement
  204. weblogic.rmi.extensions.CallRouter.  If specified, an instance of
  205. this class will be called before each method call and be given the
  206. opportunity to choose a server to route to based on the method
  207. parameters.  It either returns a server name or null indicating
  208. that the current load algorithm should be used to pick the server.
  209.  
  210. Used in: clustering-descriptor
  211. -->
  212. <!ELEMENT home-call-router-class-name (#PCDATA)>
  213.  
  214.  
  215. <!--
  216. The cache (see "max-beans-in-cache" above) is scrubbed of
  217. inactive objects after at least this many seconds. Objects 
  218. scrubbed are passivated.
  219.  
  220. Used in: caching-descriptor
  221. -->
  222. <!ELEMENT idle-timeout-seconds (#PCDATA)>
  223.  
  224. <!--
  225. The passivation-strategy can be either "default" or "transaction".  With
  226. the default setting the container will attempt to keep a working set
  227. of beans in the cache.  With the "transaction" setting, the container will 
  228. passivate the bean after every transaction (or method call for a 
  229. non-transactional invocation).
  230.  
  231. Used in: caching-descriptor
  232. -->
  233. <!ELEMENT passivation-strategy (#PCDATA)>
  234.  
  235.  
  236. <!--
  237. The cache-strategy can be one of "Read-Only"
  238. or "Read-Write".  The default is "Read-Write". 
  239.  
  240. Used in: caching-descriptor
  241. -->
  242. <!ELEMENT cache-strategy (#PCDATA)>
  243.  
  244. <!--
  245. The read-timeout-seconds is the number of seconds between ejbLoad calls on 
  246. a Read-Only entity bean.  If read-timeout-seconds is 0, 
  247. ejbLoad will only be called when the bean is brought into the cache.
  248.  
  249. Used in: caching-descriptor
  250. -->
  251. <!ELEMENT read-timeout-seconds (#PCDATA)>
  252.  
  253.  
  254. <!--
  255. Applies to entity beans. The name of an EJBean method that tells the
  256. container whether the bean data has been modified. The method is
  257. called when the EJBean is stored. If a method is not specified,
  258. WebLogic always assumes that the EJBean has been modified and always
  259. saves it. Providing a method and setting it as appropriate will
  260. improve performance.
  261.  
  262. Used in: persistence-desciptor
  263. -->
  264. <!ELEMENT is-modified-method-name (#PCDATA)>
  265.  
  266.  
  267. <!-- 
  268. This specifies a jndi-name for a bean, resource or reference.
  269.  
  270. Used in: weblogic-enterprise-bean, reference-descriptor
  271. -->
  272. <!ELEMENT jndi-name (#PCDATA)>
  273.  
  274.  
  275.  
  276. <!--
  277. Maximum number of objects of this class that are allowed in memory.
  278. Objects are kept in an LRU chain, and the ones dropped from the
  279. end of the chain are passivated.
  280.  
  281. Used in: caching-descriptor
  282. -->
  283. <!ELEMENT max-beans-in-cache (#PCDATA)>
  284.  
  285.  
  286.  
  287. <!--
  288. WebLogic EJB maintains a free pool of beans for every bean class.
  289. This property decides the maximum size of the pool.
  290.  
  291. Used in: caching-descriptor
  292. -->
  293. <!ELEMENT max-beans-in-free-pool (#PCDATA)>
  294.  
  295. <!--
  296. WebLogic EJB maintains a free pool of beans for every bean class.
  297. This property decides the initial size of the pool.
  298.  
  299. Used in: caching-descriptor
  300. -->
  301. <!ELEMENT initial-beans-in-free-pool (#PCDATA)>
  302.  
  303.  
  304.  
  305. <!--
  306. The persistence-descriptor is used to specify persistence options 
  307.  
  308. Used in: weblogic-enterprise-bean
  309. -->
  310. <!ELEMENT persistence-descriptor (
  311.     is-modified-method-name?,
  312.     delay-updates-until-end-of-tx?,
  313.     finders-call-ejbload?,
  314.     persistence-type*, 
  315.     db-is-shared?, 
  316.     stateful-session-persistent-store-dir?,
  317.     persistence-use?)
  318. >
  319.  
  320. <!--
  321. Specify transaction isolation level on a per-method basis.
  322.  
  323. Used in: weblogic-enterprise-bean
  324. -->
  325. <!ELEMENT transaction-isolation (isolation-level, method+)>
  326.  
  327. <!--
  328. Specify a transaction isolation level
  329.  
  330. The value of this element must be one of the following:
  331.  
  332.    TRANSACTION_SERIALIZABLE  
  333.    TRANSACTION_READ_COMMITTED
  334.    TRANSACTION_READ_UNCOMMITTED
  335.    TRANSACTION_REPEATABLE_READ
  336.  
  337. Used in: weblogic-enterprise-bean
  338. -->
  339. <!ELEMENT isolation-level (#PCDATA)>
  340.  
  341. <!-- 
  342. The method element is used to denote a method of an enterprise bean's 
  343. home or remote interface, or a set of methods.
  344.  
  345. For further information, see the description of the element in ejb-jar.dtd.
  346.  
  347. Used in: transaction-isolation
  348. -->
  349. <!ELEMENT method (description?, ejb-name, method-intf?, method-name, method-params?)>
  350.  
  351. <!-- 
  352. The method-intf element allows a method element to differentiate
  353. between the methods with the same name and signature that are defined
  354. in both the remote and home interfaces. The method-intf element must
  355. be one of the following: 
  356.   <method-intf>Home</method-intf>
  357.   <method-intf>Remote</method-intf> 
  358.  
  359. Used in: method 
  360. -->
  361. <!ELEMENT method-intf (#PCDATA)>
  362.  
  363. <!-- 
  364. The method-name element contains a name of an enterprise bean method,
  365. or the asterisk (*) character. The asterisk is used when the element
  366. denotes all the methods of an enterprise bean's remote and home
  367. interfaces.
  368.  
  369. Used in: method 
  370. -->
  371. <!ELEMENT method-name (#PCDATA)>
  372.  
  373. <!-- 
  374. The method-param element contains the fully-qualified Java type name
  375. of a method parameter.
  376.  
  377. Used in: method-params 
  378. -->
  379. <!ELEMENT method-param (#PCDATA)>
  380.  
  381. <!-- 
  382. The method-params element contains a list of the fully-qualified Java
  383. type names of the method parameters.
  384.  
  385. Used in: method
  386. --> 
  387. <!ELEMENT method-params (method-param*)>
  388.  
  389.  
  390. <!--
  391. A persistence-type is a holder for data that is particular to a particular
  392. bean's use of a particular persistence type.
  393.  
  394. Used in: persistence-descriptor
  395.  
  396. Example:
  397.     <persistence-type>
  398.         <type-identifier>...</type-identifier>
  399.         ...
  400.     </persistence-type>
  401. -->
  402. <!ELEMENT persistence-type (
  403.     type-identifier,
  404.     type-version,
  405.     type-storage
  406. )>
  407.  
  408.  
  409. <!--
  410. The persistence-use tag stores an identifier of the Persistence Type to be 
  411. used for this particular bean.
  412.  
  413. Used in: persistence-descriptor
  414.  
  415. Example:
  416.     <persistence-use>
  417.         <type-identifier>WebLogic_CMP_JDBC</type-identifier>
  418.         <type-version>1.3.2</type-version>
  419.     </persistence-use>
  420. -->
  421. <!ELEMENT persistence-use (type-identifier, type-version)>
  422.  
  423. <!--
  424. The principal-name element contains the name of a principal.
  425.  
  426. Used in: security-role-assignment
  427. -->
  428. <!ELEMENT principal-name (#PCDATA)>
  429.  
  430.  
  431. <!--
  432. The res-ref-name element specifies the name of a resource factory
  433. reference.
  434.  
  435. Used in: reference-descriptor
  436.  
  437. -->
  438. <!ELEMENT res-ref-name (#PCDATA)>
  439.  
  440. <!--
  441. The resource-description is used to map the JNDI name in the WebLogic 
  442. server of a server resource that is used by a bean to an EJB resource 
  443. reference.
  444.  
  445.  Used in: reference-descriptor
  446.  
  447.  Example:
  448.      <resource-description>
  449.     <res-ref-name>
  450.       jdbc/EmployeeAppDB
  451.     </res-ref-name>
  452.         <jndi-name>
  453.       weblogic.jdbc.jts.ejbPool
  454.         </jndi-name>
  455.      </resource-description>
  456. -->
  457. <!ELEMENT resource-description (res-ref-name, jndi-name)>
  458.  
  459.  
  460. <!--
  461. The reference-descriptor specifies a list of resource-descriptions that
  462. describe the resources used in the bean.
  463.  
  464.  Used in: weblogic-enterprise-bean
  465.  
  466.  Example:
  467.      <reference-descriptor>
  468.         <resource-description>
  469.       <res-ref-name>
  470.         jdbc/EmployeeAppDB
  471.       </res-ref-name>
  472.       <jndi-name>
  473.         weblogic.jdbc.jts.ejbPool
  474.       </jndi-name>
  475.         </resource-description>
  476.         <resource-description>
  477.       <res-ref-name>
  478.         jdbc/PersonDB
  479.       </res-ref-name>
  480.       <jndi-name>
  481.         weblogic.jdbc.jts.personPool
  482.       </jndi-name>
  483.         </resource-description>
  484.      </reference-descriptor>
  485. -->
  486. <!ELEMENT reference-descriptor (
  487.   resource-description*,
  488.   ejb-reference-description*
  489. )>
  490.  
  491. <!--
  492. The role-name element contains the name of a security role.
  493.  
  494. Used in: security-role-assignment
  495. -->
  496. <!ELEMENT role-name (#PCDATA)>
  497.  
  498.  
  499. <!--
  500. The security-role-assigment declares a mapping between an EJB security role
  501. and one or more principals in the WebLogic server.
  502.  
  503. Example:
  504.    <security-role-assignment>
  505.      <role-name>
  506.        PayrollAdmin
  507.      </role-name>
  508.      <principal-name>
  509.        Tanya
  510.      </principal-name>
  511.      <principal-name>
  512.        Fred
  513.      </principal-name>
  514.      <principal-name>
  515.        system
  516.      </principal-name>
  517.    </security-role-assignment>
  518.  
  519. Used in: weblogic-ejb-jar
  520. -->
  521. <!ELEMENT security-role-assignment (role-name, principal-name+)>
  522.  
  523. <!--
  524. The stateful-session-persistent-store-dir specifies the directory in the
  525. server's file system where the state of passivated stateful session beans is 
  526. to be stored.
  527.  
  528. Used in: persistence-descriptor
  529. -->
  530. <!ELEMENT stateful-session-persistent-store-dir (#PCDATA)>
  531.  
  532.  
  533. <!--
  534. The stateless-bean-call-router-class-name specifies a custom class 
  535. to be used for routing bean method calls.  This class must implement
  536. weblogic.rmi.extensions.CallRouter.  If specified, an instance of
  537. this class will be called before each method call and be given the
  538. opportunity to choose a server to route to based on the method
  539. parameters.  It either returns a server name or null indicating
  540. that the current load algorithm should be used to pick the server.
  541.  
  542. Used in: clustering-descriptor
  543. -->
  544. <!ELEMENT stateless-bean-call-router-class-name (#PCDATA)>
  545.  
  546.  
  547. <!--
  548. The valid values of the stateless-bean-is-clusterable parameter 
  549. are "True" or "False."
  550.  
  551. The parameter is applicable only to session EJBeans with a 
  552. session-type value of "Stateless" (see ejb-jar.dtd).
  553. If home-is-clusterable is "True" and this parameter is also "true",
  554. calls to this bean stub will be load-balanced between all the
  555. the servers on which this bean is deployed, and if a server
  556. hosting the bean becomes unreachable, the call will automatically
  557. failover to another server hosting the bean.
  558.  
  559. Used in: clustering-descriptor
  560. -->
  561. <!ELEMENT stateless-bean-is-clusterable (#PCDATA)>
  562.  
  563.  
  564. <!--
  565. The stateless-bean-load-algorithm specifies the algorithm to use 
  566. for load-balancing between replicas of this bean.  If this property 
  567. is not specified, the algorithm specified by the server property
  568. weblogic.cluster.defaultLoadAlgorithm will be used.  
  569.  
  570. The legal values of stateless-bean-load-algorithm are:
  571.   RoundRobin
  572.   Random
  573.   WeightBased
  574.  
  575. Used in: clustering-descriptor
  576. -->
  577. <!ELEMENT stateless-bean-load-algorithm (#PCDATA)>
  578.  
  579.  
  580. <!--
  581. The value of the stateless-bean-methods-are-idempotent must be
  582. either "True" or "False."
  583.  
  584. This parameter is applicable only to session EJBeans with a 
  585. session-type of "Stateless" (see ejb-jar.dtd).
  586. The value should be set to "True" only if the bean is written
  587. such that repeated calls to the same method with the same arguments
  588. has exactly the same effect as a single call. This allows the failover
  589. handler to retry a failed call without knowing whether the call
  590. actually completed on the failed server. Setting this property to
  591. "true" makes it possible for the bean stub to automatically recover
  592. from any failure as long as another server hosting the bean can be
  593. reached.
  594.  
  595. Used in: clustering-descriptor
  596. -->
  597. <!ELEMENT stateless-bean-methods-are-idempotent (#PCDATA)>
  598.  
  599.  
  600. <!--
  601. Sets the default timeout for container-initiated transactions for this
  602. bean. If a transaction's duration is longer than this value, it will
  603. be rolled back. 
  604.  
  605. Used in: transaction-descriptor
  606. -->
  607. <!ELEMENT trans-timeout-seconds (#PCDATA)>
  608.  
  609.  
  610.  
  611. <!--
  612. The transaction-descriptor specifies properties relating to transactions
  613.  
  614. Used in: weblogic-enterprise-bean
  615. -->
  616. <!ELEMENT transaction-descriptor (
  617.   trans-timeout-seconds?)
  618. >
  619.  
  620.  
  621. <!--
  622. This stores the identifier of the Persistence Type that this tag describes.
  623.  
  624. Used in: persistence-type, persistence-use
  625.  
  626. Example:
  627.     <type-identifier>WebLogic_CMP_JDBC</type-identifier>
  628. -->
  629. <!ELEMENT type-identifier (#PCDATA)>
  630.  
  631.  
  632.  
  633. <!--
  634. The type-storage tag stores a file (path relative within the ejb-jar file) 
  635. which stores data specific to this Persistence Type.
  636.  
  637. Used in: persistence-type
  638.  
  639. Example:
  640.     <type-storage>persistence/weblogic/cmp_jdbc.xml</type-storage>
  641. -->
  642. <!ELEMENT type-storage (#PCDATA)>
  643.  
  644.  
  645.  
  646. <!--
  647. The type-version tag stores the version of the Persistence Type to be used for 
  648. this particular bean. Most useful when a server deployment has multiple 
  649. compatible versions of the same Persistence Type installed, as the Persistence 
  650. Type identifier is not unique between versions.
  651.  
  652. Used in: persistence-use, persistence-type
  653.  
  654. Example:
  655.     <type-version>1.3.2</type-version>   
  656.  
  657. -->
  658. <!ELEMENT type-version (#PCDATA)>
  659.  
  660.  
  661. <!-- 
  662. The weblogic-ejb-jar is the root element of the weblogic component of the
  663. EJB deployment descriptor 
  664. -->
  665. <!ELEMENT weblogic-ejb-jar (description?, weblogic-version?, 
  666.           weblogic-enterprise-bean*, security-role-assignment*)>
  667.  
  668.  
  669. <!-- 
  670. The weblogic-enterprise-bean element contains the deployment
  671. information for a bean that is specific to the WebLogic Server
  672.  
  673. Used in: weblogic-ejb-jar
  674.  
  675. Version note: Service Pack 1 is required in order to use the 
  676. transaction-isolation element
  677.  
  678. -->
  679. <!ELEMENT weblogic-enterprise-bean (
  680.      ejb-name, 
  681.      caching-descriptor?, 
  682.      persistence-descriptor?, 
  683.      clustering-descriptor?, 
  684.      transaction-descriptor?,
  685.      reference-descriptor?,
  686.      enable-call-by-reference?,
  687.      jndi-name?,
  688.      transaction-isolation*)
  689. >
  690.  
  691. <!--
  692. The weblogic-version specifies the version of WebLogic to which 
  693. the weblogic-ejb-jar applies.
  694.  
  695. Used in: weblogic-ejb-jar
  696. -->
  697. <!ELEMENT weblogic-version (#PCDATA)>
  698.  
  699.