Tutorial
Template para mostrar un contenido usando la API
22/02/2007

Codigo con el que podemos mostrar la información de un recurso usando la API de OpenCms, sin necesidad de usar taglibs.

Código:
<%@ page session="false" buffer="none" isELIgnored="true"

import="java.util.*,
org.opencms.frontend.templateone.*" %>
<%@ page import="org.opencms.jsp.CmsJspXmlContentBean" %>
<%@ page import="org.opencms.jsp.I_CmsXmlContentContainer" %>
<%@ page import="java.util.List" %>
<%@ page import="org.opencms.xml.I_CmsXmlDocument" %>
<%@ page import="org.opencms.file.CmsResource" %>
<%@ page import="org.opencms.file.CmsFile" %>
<%@ page import="org.opencms.file.CmsObject" %>
<%@ page import="org.opencms.file.CmsProperty" %>
<%@ page import="org.opencms.xml.content.CmsXmlContentFactory" %>
<%@ page import="org.opencms.xml.content.CmsXmlContent" %>
<%
CmsJspXmlContentBean cjxc =
new CmsJspXmlContentBean(pageContext,request,response);
CmsObject obj_cms = cjxc.getCmsObject();
String pageName = cjxc.info("opencms.request.uri");
I_CmsXmlContentContainer icms=
cjxc.contentload("singleFile",pageName, false);
Iterator it = icms.getCollectorResult().iterator();
while (it.hasNext()) {
CmsResource recurso = (CmsResource)it.next();
CmsXmlContent content =
CmsXmlContentFactory.unmarshal(obj_cms, recurso, request);
Locale loc = null;
List locales=content.getLocales();
Iterator itlocal=locales.iterator();
while(itlocal.hasNext()){
loc=(Locale)itlocal.next();
}
out.println(" </p><p> RECUPERARNDO ELEMENTOS </p> ");
List listaElementos=content.getNames(loc);
Iterator itrelementos=listaElementos.iterator();
while(itrelementos.hasNext()){
String nome = (String)itrelementos.next();
String valor = content.getValue(nome,loc).toString();
out.println("<p> nome do elemento : "+nome+
" valor : "+valor+"</p>");
}
out.println(" </p><p> RECUPERANDO PROPIEDADES </p></p> ");
List propiedades=obj_cms.readPropertyObjects(recurso,false);
int count = propiedades.size();
for(int i=0; i<count;i++){
CmsProperty currProperty = (CmsProperty) propiedades.get(i);
String propertyName = currProperty.getName();
String propertyValue = currProperty.getValue();
out.println(" Propiedade : "+propertyName+" valor : "+
propertyValue+"<p></p>");
}
}
%>

Carlos Cotelo Lafuente