Top Description Fields Methods
javax.portlet

public Interface ResourceURL

extends BaseURL
Known Direct Implementers
javax.portlet.filter.ResourceURLWrapper

The ResourceURL defines a resource URL that when clicked will result in a serveResource call of the ResourceServingPortlet interface.

Each resource URL has a specific cache level assigned with it. This level can be either FULL, PORTLET or PAGE and denotes the cacheability of the resource in the browser.

The default cache level of a resource URL is either the cache level of the parent resource URL, or PAGE if no parent resource URL is available.

Since
2.0

Field Summary

Modifier and TypeField and Description
public static final String
FULL

The URL of type FULL does not need to contain the current state of the page or the current render parameters, portlet mode, or window state of the portlet.

public static final String
PAGE

The URL of type PAGE may contain artifacts that require knowledge of the state of the complete page, like PortletURLs.

public static final String
PORTLET

The URL of type PORTLRET does not need to contain the current state of the page, but the current render parameters, portlet mode, or window state of the portlet must be accessible to the portlet.

public static final String
SHARED

Property that the portlet can set for resources with caching type FULL via the setProperty method on the ResourceURL.

Method Summary

Modifier and TypeMethod and Description
public String

Returns:

the cache level of this resource URL.
getCacheability
()

Returns the cache level of this resource URL.

public String

Returns:

the resource ID set on the ResourceURL,or null if no resource ID was set on the URL.
getResourceID
()

Returns the resource ID set on the ResourceURL or null if no resource ID was set on the URL.

public MutableResourceParameters

Returns:

a mutable PortletParameters object representing the private and public render parameters
getResourceParameters
()

Gets the resource parameter values set for this URL.
public void
setCacheability(String
the cache level of this resource URL.
cacheLevel
)

Sets the cache level of this resource URL.

public void
setResourceID(String
ID for this resource URL
resourceID
)

Allows setting a resource ID that can be retrieved when serving the resource through the ResourceRequest#getResourceID method.

Inherited from javax.portlet.BaseURL:
addPropertyappendappendgetParameterMapsetParametersetParametersetParameterssetPropertysetSecuretoStringwritewrite

Field Detail

FULLback to summary
public static final String FULL

The URL of type FULL does not need to contain the current state of the page or the current render parameters, portlet mode, or window state of the portlet. Thus the portlet may not be able to access the portlet mode, window state, or render parameters in the serveResource call.

Only URLs of the type FULL are allowed in the response. The same restriction is true for all downstream URLs that result from this response call. Attempts to create URLs that are not of type FULL will result in an IllegalStateException.

URLs of the type FULL have the highest cacheability in the browser as they do not depend on any state of the portlet or page.

PAGEback to summary
public static final String PAGE

The URL of type PAGE may contain artifacts that require knowledge of the state of the complete page, like PortletURLs.

URLs of the type PAGE are only cacheable on the page level and can only be served from the browser cache as long as no state on the page changes.

PORTLETback to summary
public static final String PORTLET

The URL of type PORTLRET does not need to contain the current state of the page, but the current render parameters, portlet mode, or window state of the portlet must be accessible to the portlet.

Only URLs of the type PORTLET or FULL are allowed in the response. The same restriction is true for all downstream URLs that result from this response. Attempts to create URLs that are not of type PORTLET or FULL will result in an IllegalStateException.

URLs of the type PORTLET are cacheable on the portlet level in the browser and can be served from the browser cache for as long as the state of this portlet does not change.

SHAREDback to summary
public static final String SHARED

Property that the portlet can set for resources with caching type FULL via the setProperty method on the ResourceURL.

When set, this property indicates to the portal application that it can share this resource across different portlet applications.

The value of this property should be a QName in the format of javax.xml.namespace.QName.toString().

Method Detail

getCacheabilityback to summary
public String getCacheability()

Returns the cache level of this resource URL.

Possible return values are: FULL, PORTLET or PAGE.

Returns:String

the cache level of this resource URL.

getResourceIDback to summary
public String getResourceID()

Returns the resource ID set on the ResourceURL or null if no resource ID was set on the URL.

Returns:String

the resource ID set on the ResourceURL,or null if no resource ID was set on the URL.

getResourceParametersback to summary
public MutableResourceParameters getResourceParameters()

Gets the resource parameter values set for this URL.

Resource parameters are additional portlet parameters added to the URL that extend the state information provided by the render parameters.

Initially the returned object is empty.

Modifying the parameter values encapsulated by the returned object directly modifies the resource parameters applied to the URL.

PortletParameters provides a description of the parameter concept.

Returns:MutableResourceParameters

a mutable PortletParameters object representing the private and public render parameters

Since
3.0
See Also
PortletParameters, MutableResourceParameters, ResourceRequest
setCacheabilityback to summary
public void setCacheability(String cacheLevel)

Sets the cache level of this resource URL.

Possible values are: FULL, PORTLET or PAGE.

Note that if this URL is created inside a serveResource call it must have at minimum the same cacheablity, or a more restrictive one, as the parent resource URL, otherwise an IllegalStateException is thrown.

The default cache level of a resource URL is either the cache level of the parent resource URL, or PAGE if no parent resource URL is available.

Parameters
cacheLevel:String

the cache level of this resource URL.

Exceptions
IllegalStateException:
if this resource URL has a weaker cache level than the parent resource URL.
IllegalArgumentException:
if the cacheLevel is unknown to the portlet container
setResourceIDback to summary
public void setResourceID(String resourceID)

Allows setting a resource ID that can be retrieved when serving the resource through the ResourceRequest#getResourceID method.

Parameters
resourceID:String

ID for this resource URL