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

## @bes Tag Reference

Borland Enterprise Server Ejb tags

### @bes Class Level Tags

@bes.bean
@bes.datasource
@bes.ejb-local-ref
@bes.ejb-ref
@bes.property
@bes.resource-env-ref
@bes.resource-ref

### @bes Method Level Tags

@bes.cross-table
@bes.relation

### @bes Field Level Tags

## @bes Class Level Tag Usage

### @bes.bean (0..*)

Most of the class-level BES options are specified in parameters of this tag.

Applies to: Session and Message Driven Beans

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
message-driven-destination-name | text | Message Driven Beans | Please describe this | false
connection-factory-name | text | Message Driven Beans | Please describe this | false
pool-max-size | int | Message Driven Beans | Max size of the pool | false
pool-init-size | int | Message Driven Beans | The initial size of the pool | false
pool-wait-timeout | int | Message Driven Beans | Please describe this | false
timeout | int | Session Beans | The timeout limit applied to transactions on Stateful beans. | false

### @bes.datasource (0..1)

Database datasource setting for CMP/BMP Entity Bean Requires @ejb.bean.

Applies to: CMP Entity Beans

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
res-ref-name | text |  | Reference to entity datasource. Default is jdbc/${jndi-name} | false
jndi-name | text |  | JNDI name of entity data source. Default is DefaultDataSource | false
cmp-resource | bool |  | !!Describe me!! | false

### @bes.ejb-local-ref (0..*)

Reference to a local EJB. There must also be a matching @ejb.ejb-local-ref.

Applies to: All EJBs

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
ref-name | text |  | The local reference name of the EJB | true
jndi-name | text |  | The JNDI name of the referenced bean. |

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

Reference to bean outside of the EJB-package. There must also be a matching @ejb.ejb-ref.

Applies to: All EJBs

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
ref-name | text |  | The local reference name of the EJB | true
jndi-name | text |  | The JNDI name of the referenced bean. |

### @bes.property (0..*)

Set a property

Applies to: All EJBs

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
prop-name | text |  | Name of the property | false
prop-type | text |  | The type of the property | false
prop-value | text |  | The value of the property | false

### @bes.resource-env-ref (0..*)

Reference to a Resource. Please provide a better description

Applies to: All EJBs

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
name | text |  | The reference name of the resource | true
jndi-name | text |  | The JNDI name of the referenced resource. |

### @bes.resource-ref (0..*)

Reference to a resource. There must also be a matching @ejb.resource-ref.

Applies to: All EJBs

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
res-name | text |  | The local resource name | false
res-ref-name | text |  | The resource ref name | false
jndi-name | text |  | The JNDI name of the referenced resource. | false

## @bes Method Level Tag Usage

### @bes.cross-table (0..1)

Database configuration for persistent relations. Only for M:N relations Requires @ejb.relation and @bes.relation

Applies to: CMR fields only

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
table-name | text |  | Database join table name | false
left-columnA | text |  | Name of the column from "Bean" table used for left side of the relation | false
left-columnB | text |  | Name of the column from join table used for left side of the relation | false
right-columnA | text |  | Name of the column from "Bean" table used for right side of the relation | false
right-columnB | text |  | Name of the column in join table used for right side of the relation | false

### @bes.relation (0..1)

Database configuration for persistent relations. Requires @ejb.relation

Applies to: CMR fields only

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
left-table-name | text |  | Database table name for left side of the relation | false
left-column-name | text |  | Name of the column used for left side of the relation | false
right-table-name | text |  | Database table name for right side of the relation | false
right-column-name | text |  | Name of the column used for right side of the relation | false

## @bes Field Level Tag Usage