# Package javax.portlet

The javax.portlet package defines the API for Java Portlet Specification V2.0.

A portlet is a Java technology based web component, managed by a portlet container, that processes requests and generates dynamic content. Portlets provide a presentation layer to Information Systems.

Portlets generate fragments of markup (e.g. HTML, XHTML, WML). A portal combines markup fragments generated by different portlets into a portal page.

A portlet container manages the lifecyle of portlets. It also provides the required runtime environment.

Portlets are bundled in Portlet Applications as web applications using the WAR file format. A portlet application consists of two deployment descriptors: one to specify the web application resources (web.xml) and one to specify the portlet resources (portlet.xml). The portlet.xml must follow the schema defined by the http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd namespace.

Interface Summary
ActionRequest: The `ActionRequest` represents the request sent to the portlet to handle an action. It extends the ClientDataRequest interface and provides action request information to portlets.
ActionResponse: The `ActionResponse` interface represents the portlet response to an action request.
BaseURL: The `BaseURL` defines the basic capabilities of a portlet URL pointing back to the portlet.
CacheControl: The `CacheControl` interface represents cache settings for a piece of markup.
ClientDataRequest: The `ClientDataRequest` represents the request information of the HTTP request issued from the client to the portal. It extends the PortletRequest interface.
Event: The `Event` interface represents an event that the portlet has received in the event processing phase.
EventPortlet: The `EventPortlet` interface allows portlets receiving events.
EventRequest: The `EventRequest` represents the request sent to the portlet to handle an event.
EventResponse: The `EventResponse` interface represents the portlet response to an event request.
MimeResponse: The `MimeResponse` defines the base interface to assist a portlet in returning MIME content.
PortalContext: The `PortalContext` interface gives the portlet the ability to retrieve information about the portal calling this portlet.
Portlet: The `Portlet` interface is used by the portlet container to invoke the portlets.
PortletConfig: The `PortletConfig` interface provides the portlet with its configuration.
PortletContext: The `PortletContext` interface defines a portlet view of the portlet container.
PortletPreferences: The `PortletPreferences` interface allows the portlet to store configuration data.
PortletRequest: The `PortletRequest` defines the base interface to provide client request information to a portlet.
PortletRequestDispatcher: The `PortletRequestDispatcher` interface defines an object that receives requests from the client and sends them to the specified resources (such as a servlet, HTML file, or JSP file) on the server.
PortletResponse: The `PortletResponse` defines the base interface to assist a portlet in creating and sending a response to the client.
PortletSession: The `PortletSession` interface provides a way to identify a user across more than one request and to store transient information about that user.
PortletURL: The `PortletURL` interface represents a URL that reference the portlet itself.
PortletURLGenerationListener: Portlet applications can register portlet URL listeners in order to filter URLs before they get generated.
PreferencesValidator: The `PreferencesValidator` allows to validate the set of preferences of the associated portlet just before they are stored in the persistent store.
RenderRequest: The `RenderRequest` represents the request sent to the portlet to handle a render.
RenderResponse: The `RenderResponse` defines an object to assist a portlet in sending a response to the portal.
ResourceRequest: The `ResourceRequest` interface represents the request send to the portlet for rendering resources.
ResourceResponse: The `ResourceResponse` defines an object to assist a portlet for rendering a resource.
ResourceServingPortlet: The `ResourceServingPortlet` interface allows serving resources through the portlet.
ResourceURL: The `ResourceURL` defines a resource URL that when clicked will result in a `serveResource` call of the `ResourceServingPortlet` interface.
StateAwareResponse: The `StateAwareResponse` represents a response that can modify state information or send events. It extends the PortletResponse interface.

Class Summary
GenericPortlet: The `GenericPortlet` class provides a default implementation for the `Portlet` interface.
PortletMode: The `PortletMode` class represents the possible modes that a portlet can assume.
PortletSessionUtil: The `PortletSessionUtil` class helps identify and decode attributes in the `PORTLET_SCOPE` scope of the PortletSession when accessed through the HttpSession an from within calls to methods of the HttpSessionBindingListener interface.
WindowState: The `WindowState` class represents the possible window states that a portlet window can assume.

Enum Summary
PortletRequest.P3PUserInfos: P3P user information constants.

Exception Summary
PortletException: The `PortletException` class defines a general exception that a portlet can throw when it is unable to perform its operation successfully.
PortletModeException: The `PortletModeException` is thrown when a portlet tries to use or set a portlet mode that is not supported by the current runtime environment or the portlet.
PortletSecurityException: A portlet should throw a `PortletSecurityException` when a call fails because of security reasons. Additionally it can be thrown by the portal/portlet-container.
ReadOnlyException: The `ReadOnlyException` is thrown when a portlet tries to change the value for a read-only preference attribute.
UnavailableException: The portlet should throw the `UnavailableException` when the portlet is either temporarily or permanently unavailable to handle requests.
ValidatorException: The `ValidatorException` is thrown by the `validate` method of a PreferencesValidator when the validation of a preference failed.
WindowStateException: The `WindowStateException` is thrown when a portlet tries to use a window state that is not supported by the current runtime environment or the portlet.

Annotation Types Summary
ProcessAction: Annotation for marking a method for processing a specific action.
ProcessEvent: Annotation for marking a method for handling a specific event.
RenderMode: Annotation for marking a method for handling a specific portlet mode in the render phase.