|
||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.opencms.jsp.util.CmsJspContentAccessBean
public class CmsJspContentAccessBean
Allows access to the individual elements of an XML content, usually used inside a loop of a
<cms:contentload>
tag.
The implementation is optimized for performance and uses lazy initializing of the requested values as much as possible.
CmsJspTagContentAccess
Nested Class Summary | |
---|---|
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.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.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. |
Field Summary | |
---|---|
protected static java.util.Map |
CONSTANT_NULL_VALUE_WRAPPER_MAP
Constant Map that always returns the CmsJspContentAccessValueWrapper.NULL_VALUE_WRAPPER . |
Constructor Summary | |
---|---|
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. |
Method Summary | |
---|---|
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 |
getHasLocale()
Returns a lazy initialized Map that provides Booleans that indicate if a specified Locale is available in the XML content. |
java.util.Map |
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 |
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. |
java.util.Locale |
getLocale()
Returns the Locale this bean was initialized with. |
java.util.Map |
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 |
getLocaleValue()
Returns a lazy initialized Map that provides a Map that provides values from the XML content in the selected locale. |
java.util.Map |
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 |
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 |
getValue()
Returns a lazy initialized Map that provides values from the XML content in the current locale. |
java.util.Map |
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. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected static final java.util.Map CONSTANT_NULL_VALUE_WRAPPER_MAP
CmsJspContentAccessValueWrapper.NULL_VALUE_WRAPPER
.
Constructor Detail |
---|
public CmsJspContentAccessBean()
You must call init(CmsObject, Locale, I_CmsXmlDocument, CmsResource)
and provide the
required values when you use this constructor.
init(CmsObject, Locale, I_CmsXmlDocument, CmsResource)
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 accessMethod Detail |
---|
public 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 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 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 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 java.util.Locale getLocale()
public java.util.Map 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 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 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 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 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 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
|
||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |