##### XDoclet

- Overview
- News and Status
- Download/Installation
- Using XDoclet
- Best Practices
- FAQ
- License

##### Ant Task Reference

- <doclet .. />
- <ejbdoclet .. />
- <hibernatedoclet .. />
- <jdodoclet .. />
- <jmxdoclet .. />
- <mockdoclet .. />
- <portletdoclet .. />
- <springdoclet .. />
- <webdoclet .. />
- <wseedoclet .. />

##### Tag Reference

- apache (@soap @struts @axis)
- bea (@weblogic)
- borland (@bes)
- caucho (@resin)
- ejb (@ejb @dao)
- exolab (@castor)
- hp (@hpas)
- hibernate (@hibernate)
- ibm (@websphere)
- java (@javabean)
- jboss (@jboss)
- jdo (@jdo)
- jmx (@jmx)
- jsf (@jsf)
- macromedia (@jrun)
- mockobjects (@mock)
- mvcsoft (@mvcsoft)
- mx4j (@mx4j)
- objectweb (@jonas)
- oracle (@oc4j)
- orion (@orion)
- portlet (@portlet)
- pramati (@pramati)
- spring (@spring)
- sun (@sunone)
- sybase (@easerver)
- tjdo (@tjdo)
- web (@web @jsp)
- webwork (@webwork)
- wsee (@wsee)
- xdoclet (@xdoclet @doc @msg)

##### Feature Documentation

- Using Value Objects

##### Advanced

- Maven Plug-in
- Merge Points
- IDE Integration
- Migration from EJBDoclet
- Ant 1.5 Troubleshooting

##### Community

- Feedback
- Resources
- Tools

##### Development

- Developer Guide
- Javadoc (API)
- Template Language (*.xdt)
- XJavaDoc Site

##### Search XDoclet

##### Project Documentation

- About XDoclet
- Project Info
- Project Reports
- Development Process

## @orion Tag Reference

Ironflare Orion Application Server specific tags for EJB beans.

Applies to: all EJB types

### @orion Class Level Tags

@orion.bean

### @orion Method Level Tags

@orion.field-persistence-manager-property
@orion.persistence

### @orion Field Level Tags

## @orion Class Level Tag Usage

### @orion.bean (0..1)

All parameters of <session-deployment/>, <entity-deployment/> and <message-driven-deployment/> are placed under this class level tag.

Applies to: All EJB types, class level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
call-timeout | int | Applicable to session and entity beans. | The time (long millis in hex) to wait for an EJB if it is busy (before throwing a RemoteException, treating it as a deadlock). 0 equals "forever" and is the default. Applicable to session and entity beans. Default value(s): 0x0 | false
copy-by-value | bool | Applicable to session and entity beans | Whether or not to copy (clone) all the incoming/outgoing parameters in EJB calls. Set this to 'false' if you're certain your application doesn't assume copy-by-value semantics for a speed-up. The default is 'true'. Applicable to session and entity beans Default value(s): true | false
max-tx-retries | int | Applicable to session and entity beans | The number of times to retry a transaction that was rolled back due to system-level failures. The default is 0, i.e. no retries. Applicable to session and entity beans. Default value(s): 0 | false
persistence-filename | text | applicable to session beans | Path to file where sessions are stored across restarts. Applicable to session beans. | false
timeout | int | applicable to session beans | Inactivity timeout in seconds. If the value is zero or negative timeouts will be disabled. Applicable to session beans. Default value(s): 0 | false
clustering-schema | text | Applicable to entity beans. | Despite what Orion's auto-generated docs say, this is NOT "the name of the data-source used if using container-managed persistence" - that's the data-source element. This parameter should be set to "asynchronous-cache" to cluster-enable the Entity bean. Valid options are: default asynchronous-cache Default value(s): default | true
data-source | text | Applicable to entity beans. | The name of the data-source used if using container-managed persistence. Applicable to entity beans. | true
exclusive-write-access | bool | Applicable to entity beans. | Whether or not the EJB-server has exclusive write (update) access to the database backend. If it does it will speed up common bean operations and enable better caching. The default is true. Applicable to entity beans. Default value(s): true | false
instance-cache-timeout | int | Applicable to entity beans. | The amount of time in seconds that an entity is to be kept in the instance (assigned to an identity) state, specifying 'never' retains the entities forever. The default is 60. Applicable to entity beans. Default value(s): 60 | false
isolation | text | Applicable to entity beans. | Specifies the isolation-level for database actions. The valid values are 'serializable', 'uncommitted', 'committed', 'repeatable_read'. Applicable to entity beans. Valid options are: serializable uncommitted committed repeatable_read Default value(s): serializable | false
max-instances | int | Applicable to entity beans. | The number of maximum instances to be kept instantiated or pooled. The default is infinite. Applicable to entity beans. | false
pool-cache-timeout | int | Applicable to entity beans. | The amount of time in seconds that an entity is to be kept in the "pooled" (unassigned) state, specifying 'never' retains the entities forever. The default is 60. Applicable to entity beans. Default value(s): 60 | false
table | text | Applicable to entity beans. | The name of the table in the database if using container-managed persistence. Applicable to entity beans. | true
validity-timeout | int | Applicable to entity beans. | The maximum amount of time (in millis) that an entity is valid in the cache (before being reloaded). Useful for loosely coupled environments where rare updates from legacy systems occur. This attribute is only valid when exclusive-write-access="true" (the default). Applicable to entity beans. | false
cache-timeout | int | Applicable to message driven beans. | The number of seconds before a cached instance can be timed out. Can be set to 'never' to never time out or to 0 (zero) to never cache. The default is 60. Applicable to message driven beans. Default value(s): 60 | false
connection-factory-location | text | Applicable to message driven beans. | The JNDI location of the connection factory to use. Applicable to message driven beans. | true
destination-location | text | Applicable to message driven beans. | The JNDI location of the destination (queue/topic) to use. Applicable to message driven beans. | true
max-instances | int | Applicable to message driven beans. | The maximum number of bean instances to instantiate. The default is -1, which implies an infinite number. Applicable to message driven beans. Default value(s): -1 | false
min-instances | int | Applicable to message driven beans. | The minimum number of bean instances to instantiate. The set amount will be instantiated at startup, and there will always be at least the set amount of instances active. The default is 0 (none). Applicable to message driven beans. Default value(s): -1 | false

## @orion Method Level Tag Usage

### @orion.field-persistence-manager-property (0..*)

If @orion.persistence field-persistence-manager specified and there's some properties for the persistence manager, specify it as one or more @orion.field-persistence-manager-property tags for the persistent field.

Applies to: Method level, entity beans

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
name | text |  | The name of the property. | true
value | text |  | The value of the property. | true

### @orion.persistence (0..*)

Used to specify orion specific persistence mechanisms, such as persisting primitive collections

Applies to: Method level, entity beans

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
persistence-name | text |  | The name of the column for single column fields, or the name of the second column in the table specified in table-name. | false
table-name | text |  | The name of the second table to use if the field is a collection | false

## @orion Field Level Tag Usage