##### XDoclet

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

##### Ant Task Reference

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

##### Tag Reference

- apache (@soap @struts @axis @tapestry)
- 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
- EJB Environment Handling

##### 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

## @jonas Tag Reference

Tags for creation of JOnAS-specific resources

Applies to: all EJB types

### @jonas Class Level Tags

@jonas.bean
@jonas.ejb-ref
@jonas.finder-method-jdbc-mapping
@jonas.is-modified-method-name
@jonas.jdbc-mapping
@jonas.max-cache-size
@jonas.message-driven-destination
@jonas.min-pool-size
@jonas.passivation-timeout
@jonas.resource
@jonas.resource-env
@jonas.session-timeout
@jonas.shared

### @jonas Method Level Tags

@jonas.cmp-field-jdbc-mapping

### @jonas Field Level Tags

## @jonas Class Level Tag Usage

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

The jonas.bean element declares the JOnAS specific information for an enterprise bean.

Applies to: All EJB types, class level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
ejb-name | text |  | The enterprise bean's name specified in the standard EJB deployment descriptor. | true
jndi-name | text |  | The JNDI name of the enterprise bean's home. Concerns only the Entity and Session beans. Mandatory if version < 2.5, but optional for Session beans for 2.5 onwards. | false

### @jonas.ejb-ref (0..*)

The jonas.ejb-ref element declares the JOnAS specific information for a reference to another enterprise bean's home.

Applies to: All EJB types, class level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
ejb-ref-name | text |  | The name of the ejb reference specified in the standard EJB deployment descriptor. | true
jndi-name | text |  | The JNDI name of the ejb. | true

### @jonas.finder-method-jdbc-mapping (0..1)

The jonas.finder-method-jdbc-mapping element declares the SQL WHERE clause associated to a finder method of a container-managed persistence entity.

Applies to: Entity Beans, class level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
method-name | text |  | The method's name. | true
method-params | text |  | Identifies a single method among multiple methods with an overloaded method name. | false
jdbc-where-clause | text |  | The SQL WHERE clause. | true

### @jonas.is-modified-method-name (0..1)

The jonas.is-modified-method-name element specifies the name of the is-modified method of an entity.

Applies to: Entity Beans, class level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
is-modified-method-name | text |  | The name of the is-modified method of an entity. | true

### @jonas.jdbc-mapping (0..1)

The jonas.jdbc-mapping element declares the mapping of an entity with container-managed persistence to the underlying database.

Applies to: Entity Beans, class level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
jndi-name | text |  | The JNDI name of the datasource. | true
automatic-pk | bool |  | True or False for use automatic generation of primary key. Default value(s): false | false
jdbc-table-name | text |  | The name of the relational table. | true

### @jonas.max-cache-size (0..1)

The jonas.max-cache-size element defines the max number of instances that can be hold in memory. The default value is infinite. This tag has only been present since version 2.4.

Applies to: Entity Beans, class level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
max-cache-size | int |  | The max number of instances that can be hold in memory. The default value is infinite. | true

### @jonas.message-driven-destination (0..1)

The jonas.jonas-message-driven-destination element declares the JOnAS specific information for a the message driven bean destination.

Applies to: Message Driven Bean, class level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
jndi-name | text |  | The JNDI name of the message driven destination. | true

### @jonas.min-pool-size (0..1)

The jonas.min-pool-size element specify the number of instances that will be created to populate the pool when the bean is loaded for the first time. The default value is 0. This tag has only been present since version 2.4.

Applies to: Entity Beans, class level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
min-pool-size | int |  | The number of instances that will be created to populate the pool when the bean is loaded for the first time. The default value is 0. | true

### @jonas.passivation-timeout (0..1)

The jonas.passivation-timeout element specifies the value of timeout in seconds for passivation of entity instances when no transaction are used.

Applies to: Entity Beans, class level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
passivation-timeout | int |  | The value of timeout in seconds for passivation of entity instances when no transaction are used. | true

### @jonas.resource (0..*)

The jonas.resource element declares the JOnAS specific information for an external resource referenced by a bean.

Applies to: All EJB types, class level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
res-ref-name | text |  | The name of the resource reference specified in the standard EJB deployment descriptor. | true
jndi-name | text |  | The JNDI name of the resource. | true

### @jonas.resource-env (0..*)

The jonas.resource-env element declares the JOnAS specific information for an external resource environment referenced by a bean.

Applies to: All EJB types, class level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
resource-env-ref-name | text |  | The name of the resource environment reference specified in the standard EJB deployment descriptor. | true
jndi-name | text |  | The JNDI name of the resource environment. | true

### @jonas.session-timeout (0..1)

The jonas.session-timeout element specifies the value of timeout in seconds for expiration of session instances.

Applies to: Session Beans, class level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
session-timeout | int |  | The value of timeout in seconds for expiration of session instances. | true

### @jonas.shared (0..1)

The jonas.shared element specifies if the bean state can be accessed outside JOnAS. This tag has only been present since version 2.4.

Applies to: Entity Beans, class level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
shared | bool |  | True if the bean state can be accessed outside JOnAS. The default is False. | true

## @jonas Method Level Tag Usage

### @jonas.cmp-field-jdbc-mapping (0..1)

The jonas.cmp-field-jdbc-mapping element declares the mapping of a container-managed field of an entity to a column of a relational table.

Applies to: Entity Beans, method level

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
field-name | text |  | The field's name. | true
jdbc-field-name | text |  | The column name of the relational table. | true

## @jonas Field Level Tag Usage