标签:
我们可以直接用OpenCms的API,而不是用标签来得到OpenCms中一个Resource的所有信息.
相关代码如下:
Code:
<%@ 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 resource = (CmsResource) it.next ();
CmsXmlContent content =
CmsXmlContentFactory.unmarshal (obj_cms, resource, request);
Locale loc = null;
List locales=content.getLocales ();
Itlocal=locales.iterator Iterator ();
while (itlocal.hasNext ()){
loc= (Locale) itlocal.next ();
}
out.println (“</p><p> RECUPERARNDO ELEMENTS </p>”);
List listaElementos=content.getNames (loc);
itrelementos=listaElementos.iterator Iterator ();
while (itrelementos.hasNext ()){
String nome = (String) itrelementos.next ();
String value = content.getValue (nome, loc) .toString ();
out.println (“<p> nome do element: “+nome+
“value: “+valor+ " </p>”);
}
out.println (“</p><p> RECOVERING PROPERTIES </p></p>”);
List propiedades=obj_cms.readPropertyObjects (resource, 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+” value: “+
propertyValue+ " <p></p> ");
}
}
%>
相关代码如下:
Code:
<%@ 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 resource = (CmsResource) it.next ();
CmsXmlContent content =
CmsXmlContentFactory.unmarshal (obj_cms, resource, request);
Locale loc = null;
List locales=content.getLocales ();
Itlocal=locales.iterator Iterator ();
while (itlocal.hasNext ()){
loc= (Locale) itlocal.next ();
}
out.println (“</p><p> RECUPERARNDO ELEMENTS </p>”);
List listaElementos=content.getNames (loc);
itrelementos=listaElementos.iterator Iterator ();
while (itrelementos.hasNext ()){
String nome = (String) itrelementos.next ();
String value = content.getValue (nome, loc) .toString ();
out.println (“<p> nome do element: “+nome+
“value: “+valor+ " </p>”);
}
out.println (“</p><p> RECOVERING PROPERTIES </p></p>”);
List propiedades=obj_cms.readPropertyObjects (resource, 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+” value: “+
propertyValue+ " <p></p> ");
}
}
%>


档案
日志
相册
视频



评论
想第一时间抢沙发么?