public class CmsJspContentAccessBean
extends java.lang.Object
<cms:contentload>
tag.The implementation is optimized for performance and uses lazy initializing of the requested values as much as possible.
CmsJspTagContentAccess
限定符和类型 | 类和说明 |
---|---|
class |
CmsJspContentAccessBean.CmsHasLocaleTransformer
Provides Booleans that indicate if a specified locale is available in the XML content,
the input is assumed to be a String that represents a Locale.
|
class |
CmsJspContentAccessBean.CmsHasLocaleValueTransformer
Provides Booleans that indicate if a specified path exists in the XML content,
the input is assumed to be a String that represents an xpath in the XML content.
|
class |
CmsJspContentAccessBean.CmsHasValueTransformer
Provides a Map with Booleans that indicate if a specified path exists in the XML content in the selected Locale,
the input is assumed to be a String that represents an xpath in the XML content.
|
class |
CmsJspContentAccessBean.CmsLocaleNamesTransformer
Provides a Map which lets the user access the list of element names from the selected locale in an XML content,
the input is assumed to be a String that represents a Locale.
|
class |
CmsJspContentAccessBean.CmsLocaleRdfaTransformer
Provides a Map which lets the user access the RDFA tags for all values in the selected locale in an XML content,
the input is assumed to be a String that represents a Locale.
|
class |
CmsJspContentAccessBean.CmsLocaleSubValueListTransformer
Provides a Map which lets the user access sub value Lists from the selected locale in an XML content,
the input is assumed to be a String that represents a Locale.
|
class |
CmsJspContentAccessBean.CmsLocaleValueListTransformer
Provides a Map which lets the user access value Lists from the selected locale in an XML content,
the input is assumed to be a String that represents a Locale.
|
class |
CmsJspContentAccessBean.CmsLocaleValueTransformer
Provides a Map which lets the user access a value from the selected locale in an XML content,
the input is assumed to be a String that represents a Locale.
|
class |
CmsJspContentAccessBean.CmsRdfaTransformer
Provides a Map which lets the user access the RDFA tag for a value in an XML content,
the input is assumed to be a String that represents an xpath in the XML content.
|
class |
CmsJspContentAccessBean.CmsSubValueListTransformer
Provides a Map which lets the user access sub value Lists in an XML content,
the input is assumed to be a String that represents an xpath in the XML content.
|
class |
CmsJspContentAccessBean.CmsValueListTransformer
Provides a Map which lets the user access value Lists in an XML content,
the input is assumed to be a String that represents an xpath in the XML content.
|
class |
CmsJspContentAccessBean.CmsValueTransformer
Provides a Map which lets the user access a value in an XML content,
the input is assumed to be a String that represents an xpath in the XML content.
|
限定符和类型 | 字段和说明 |
---|---|
protected static java.util.Map<java.lang.String,CmsJspContentAccessValueWrapper> |
CONSTANT_NULL_VALUE_WRAPPER_MAP
Constant Map that always returns the
CmsJspContentAccessValueWrapper.NULL_VALUE_WRAPPER . |
构造器和说明 |
---|
CmsJspContentAccessBean()
No argument constructor, required for a JavaBean.
|
CmsJspContentAccessBean(CmsObject cms,
CmsResource resource)
Creates a content access bean based on a Resource, using the current request context locale.
|
CmsJspContentAccessBean(CmsObject cms,
java.util.Locale locale,
CmsResource resource)
Creates a content access bean based on a Resource.
|
CmsJspContentAccessBean(CmsObject cms,
java.util.Locale locale,
I_CmsXmlDocument content)
Creates a content access bean based on an XML content object.
|
限定符和类型 | 方法和说明 |
---|---|
CmsObject |
getCmsObject()
Returns the OpenCms user context this bean was initialized with.
|
CmsFile |
getFile()
Returns the raw VFS file object the content accessed by this bean was created from.
|
java.lang.String |
getFilename()
Returns the site path of the current resource, that is the result of
CmsObject.getSitePath(CmsResource) with the resource
obtained by getFile() . |
java.util.Map<java.lang.String,java.lang.Boolean> |
getHasLocale()
Returns a lazy initialized Map that provides Booleans that indicate if a specified Locale is available
in the XML content.
|
java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.Boolean>> |
getHasLocaleValue()
Returns a lazy initialized Map that provides a Map that provides Booleans that
indicate if a value (xpath) is available in the XML content in the selected locale.
|
java.util.Map<java.lang.String,java.lang.Boolean> |
getHasValue()
Returns a lazy initialized Map that provides Booleans that
indicate if a value (xpath) is available in the XML content in the current locale.
|
CmsUUID |
getId()
Returns the structure ID of the current resource, that is the ID of
the resource obtained by
getFile() . |
java.util.Locale |
getLocale()
Returns the Locale this bean is using for content access, this may be a default fall back Locale.
|
java.util.Map<java.lang.String,java.util.List<java.lang.String>> |
getLocaleNames()
Returns a lazy initialized Map that provides a List with all available elements paths (Strings)
used in this document in the selected locale.
|
java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>> |
getLocaleRdfa()
Returns the map of RDFA maps by locale.
|
java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.util.List<CmsJspContentAccessValueWrapper>>> |
getLocaleSubValueList()
Returns a lazy initialized Map that provides a Map that provides Lists of direct sub values
from the XML content in the selected locale.
|
java.util.Map<java.lang.String,java.util.Map<java.lang.String,CmsJspContentAccessValueWrapper>> |
getLocaleValue()
Returns a lazy initialized Map that provides a Map that provides
values from the XML content in the selected locale.
|
java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.util.List<CmsJspContentAccessValueWrapper>>> |
getLocaleValueList()
Returns a lazy initialized Map that provides a Map that provides Lists of values
from the XML content in the selected locale.
|
java.util.List<java.lang.String> |
getNames()
Returns a list with all available elements paths (Strings) used in this document
in the current locale.
|
I_CmsXmlDocument |
getRawContent()
Returns the raw XML content object that is accessed by this bean.
|
java.util.Map<java.lang.String,java.lang.String> |
getRdfa()
Returns RDFA by value name map.
|
java.util.Map<java.lang.String,java.util.List<CmsJspContentAccessValueWrapper>> |
getSubValueList()
Returns a lazy initialized Map that provides Lists of direct sub values
of the given value from the XML content in the current locale.
|
java.util.Map<java.lang.String,CmsJspContentAccessValueWrapper> |
getValue()
Returns a lazy initialized Map that provides values from the XML content in the current locale.
|
java.util.Map<java.lang.String,java.util.List<CmsJspContentAccessValueWrapper>> |
getValueList()
Returns a lazy initialized Map that provides Lists of values from the XML content in the current locale.
|
CmsJspVfsAccessBean |
getVfs()
Returns an instance of a VFS access bean,
initialized with the OpenCms user context this bean was created with.
|
void |
init(CmsObject cms,
java.util.Locale locale,
I_CmsXmlDocument content,
CmsResource resource)
Initialize this instance.
|
protected static final java.util.Map<java.lang.String,CmsJspContentAccessValueWrapper> CONSTANT_NULL_VALUE_WRAPPER_MAP
CmsJspContentAccessValueWrapper.NULL_VALUE_WRAPPER
.public CmsJspContentAccessBean()
You must call init(CmsObject, Locale, I_CmsXmlDocument, CmsResource)
and provide the
required values when you use this constructor.
public CmsJspContentAccessBean(CmsObject cms, CmsResource resource)
cms
- the OpenCms context of the current userresource
- the resource to create the content frompublic CmsJspContentAccessBean(CmsObject cms, java.util.Locale locale, CmsResource resource)
cms
- the OpenCms context of the current userlocale
- the Locale to use when accessing the contentresource
- the resource to create the content frompublic CmsJspContentAccessBean(CmsObject cms, java.util.Locale locale, I_CmsXmlDocument content)
cms
- the OpenCms context of the current userlocale
- the Locale to use when accessing the contentcontent
- the content to accesspublic CmsObject getCmsObject()
public CmsFile getFile()
This can be used to access information from the raw file on a JSP.
Usage example on a JSP with the JSTL:
<cms:contentload ... > <cms:contentaccess var="content" /> Root path of the resource: ${content.file.rootPath} </cms:contentload>
public java.lang.String getFilename()
CmsObject.getSitePath(CmsResource)
with the resource
obtained by getFile()
.Usage example on a JSP with the JSTL:
<cms:contentload ... > <cms:contentaccess var="content" /> Site path of the resource: "${content.filename}"; </cms:contentload>
CmsObject.getSitePath(CmsResource)
public java.util.Map<java.lang.String,java.lang.Boolean> getHasLocale()
The provided Map key is assumed to be a String that represents a Locale.
Usage example on a JSP with the JSTL:
<cms:contentload ... > <cms:contentaccess var="content" /> <c:if test="${content.hasLocale['de']}" > The content has a "de" Locale! </c:if> </cms:contentload>
public java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.Boolean>> getHasLocaleValue()
The first provided Map key is assumed to be a String that represents the Locale, the second provided Map key is assumed to be a String that represents the xpath to the value.
Usage example on a JSP with the JSTL:
<cms:contentload ... > <cms:contentaccess var="content" /> <c:if test="${content.hasLocaleValue['de']['Title']}" > The content has a "Title" value in the "de" Locale! </c:if> </cms:contentload>Please note that you can also test if a locale value exists like this:
<c:if test="${content.value['de']['Title'].exists}" > ... </c:if>
getHasValue()
public java.util.Map<java.lang.String,java.lang.Boolean> getHasValue()
The provided Map key is assumed to be a String that represents the xpath to the value.
Usage example on a JSP with the JSTL:
<cms:contentload ... > <cms:contentaccess var="content" /> <c:if test="${content.hasValue['Title']}" > The content has a "Title" value in the current locale! </c:if> </cms:contentload>Please note that you can also test if a value exists like this:
<c:if test="${content.value['Title'].exists}" > ... </c:if>
getHasLocaleValue()
public CmsUUID getId()
getFile()
.Usage example on a JSP with the JSTL:
<cms:contentload ... > <cms:contentaccess var="content" /> Site path of the resource: "${content.id}"; </cms:contentload>
CmsResource#getStructureId()
public java.util.Locale getLocale()
public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getLocaleNames()
The provided Map key is assumed to be a String that represents the Locale.
Usage example on a JSP with the JSTL:
<cms:contentload ... > <cms:contentaccess var="content" /> <c:forEach items="${content.localeNames['de']}" var="elem"> <c:out value="${elem}" /> </c:forEach> </cms:contentload>
getNames()
public java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>> getLocaleRdfa()
public java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.util.List<CmsJspContentAccessValueWrapper>>> getLocaleSubValueList()
The first provided Map key is assumed to be a String that represents the Locale, the second provided Map key is assumed to be a String that represents the xpath to the value.
Usage example on a JSP with the JSTL:
<cms:contentload ... > <cms:contentaccess var="content" /> <c:forEach var="item" items="${content.localeSubValueList['de']['Items']}"> ${item} </c:forEach> </cms:contentload>
getLocaleValue()
public java.util.Map<java.lang.String,java.util.Map<java.lang.String,CmsJspContentAccessValueWrapper>> getLocaleValue()
The first provided Map key is assumed to be a String that represents the Locale, the second provided Map key is assumed to be a String that represents the xpath to the value.
Usage example on a JSP with the JSTL:
<cms:contentload ... > <cms:contentaccess var="content" /> The Title in Locale "de": ${content.localeValue['de']['Title']} </cms:contentload>
getValue()
public java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.util.List<CmsJspContentAccessValueWrapper>>> getLocaleValueList()
The first provided Map key is assumed to be a String that represents the Locale, the second provided Map key is assumed to be a String that represents the xpath to the value.
Usage example on a JSP with the JSTL:
<cms:contentload ... > <cms:contentaccess var="content" /> <c:forEach var="teaser" items="${content.localeValueList['de']['Teaser']}"> ${teaser} </c:forEach> </cms:contentload>
getLocaleValue()
public java.util.List<java.lang.String> getNames()
Usage example on a JSP with the JSTL:
<cms:contentload ... > <cms:contentaccess var="content" /> <c:forEach items="${content.names}" var="elem"> <c:out value="${elem}" /> </c:forEach> </cms:contentload>
getLocaleNames()
public I_CmsXmlDocument getRawContent()
public java.util.Map<java.lang.String,java.lang.String> getRdfa()
public java.util.Map<java.lang.String,java.util.List<CmsJspContentAccessValueWrapper>> getSubValueList()
The provided Map key is assumed to be a String that represents the xpath to the value. Use this method in case you want to iterate over a List of sub values from the XML content.
Usage example on a JSP with the JSTL:
<cms:contentload ... > <cms:contentaccess var="content" /> <c:forEach var="teaser" items="${content.subValueList['Items']}"> ${item} </c:forEach> </cms:contentload>
getLocaleValueList()
public java.util.Map<java.lang.String,CmsJspContentAccessValueWrapper> getValue()
The provided Map key is assumed to be a String that represents the xpath to the value.
Usage example on a JSP with the JSTL:
<cms:contentload ... > <cms:contentaccess var="content" /> The Title: ${content.value['Title']} </cms:contentload>
getLocaleValue()
public java.util.Map<java.lang.String,java.util.List<CmsJspContentAccessValueWrapper>> getValueList()
The provided Map key is assumed to be a String that represents the xpath to the value. Use this method in case you want to iterate over a List of values form the XML content.
Usage example on a JSP with the JSTL:
<cms:contentload ... > <cms:contentaccess var="content" /> <c:forEach var="teaser" items="${content.valueList['Teaser']}"> ${teaser} </c:forEach> </cms:contentload>
getLocaleValueList()
public CmsJspVfsAccessBean getVfs()
public void init(CmsObject cms, java.util.Locale locale, I_CmsXmlDocument content, CmsResource resource)
cms
- the OpenCms context of the current userlocale
- the Locale to use when accessing the contentcontent
- the XML content to accessresource
- the resource to create the content from