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

## @portlet Tag Reference

Tags for creation of Portlet resources

Applies to:

### @portlet Class Level Tags

@portlet.portlet
@portlet.portlet-info
@portlet.portlet-init-param
@portlet.preference
@portlet.preferences-validator
@portlet.security-role-ref
@portlet.supports

### @portlet Method Level Tags

### @portlet Field Level Tags

## @portlet Class Level Tag Usage

### @portlet.portlet (0..1)

Defines a portlet class.

Applies to: Applicable to all portlets.

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
display-name | text |  | The portlet's description. | false
display-name | text |  | The portlet's display-name. The display-name contains a short name that is intended to be displayed by tools. The display name need not be unique. | false
expiration-cache | text |  | The time (in seconds) after which the portlet output expires. -1 indicates that the output never expires. | false
name | text |  | The canonical name of the portlet. Must be unique within the portlet application. | true
portlet-class | text |  | The class that should be used for the <portlet-class> tag. Used for struts-based portlets where your Action class is not directly called by the porlet container. | false

### @portlet.portlet-info (0..1)

Defines additional portlet information.

Applies to: Applicable to all portlets.

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
title | text |  | Static title for the portlet. | false
keywords | text |  | Comma-separate list of keywords associated with this portlet. | false
short-title | text |  | Short version of the portlet's static title. | false

### @portlet.portlet-init-param (0..*)

Defines a portlet initialization parameter.

Applies to: Applicable to all portlets.

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
description | text |  | The init parameter's description. | false
name | text |  | The name of the initialization parameter. | true
value | text |  | The value of the initialization parameter. | true

### @portlet.preference (0..*)

Defines portlet preference. A preference is configuration data for the portlet that the portlet user is allowed to set when customizing their portal.

Applies to: Applicable to all portlets.

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
read-only | text |  | If "true", the preference cannot be modified by the user. | false
name | text |  | The name of the preference. | true
value | text |  | The initial value of the preference. This value can be overridden when each user customizes their portlet. | true

### @portlet.preferences-validator (0..1)

Declares the portlet's preferences validator.

Applies to: Applicable to all portlets.

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
class | text |  | The fully qualified class name of the preferences validator. | true

### @portlet.security-role-ref (0..*)

Declares a security role reference for the portlet.

Applies to: Applicable to all portlets.

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
description | text |  | The description of the security role reference. | false
role-link | text |  | The description of the security role reference. | true
role-name | text |  | The description of the security role reference. | true

### @portlet.supports (0..*)

Defines what portlet modes (edit,help,view) are supported for a particular mime-type.

Applies to: Applicable to all portlets.

Parameter | Type | Applicability | Description | Mandatory
--- | --- | --- | --- | ---
mime-type | text |  | The mime-type for which mode-support is being defined. | true
modes | text |  | A comma-separated list of modes supported by the specified mime-type. | true

## @portlet Method Level Tag Usage

## @portlet Field Level Tag Usage