使用wcm库的简单jsp文件

时间:2012-12-17 16:16:46

标签: jsp wcm

我刚才在jsp文件中使用wcm库并且有点卡住了。我在创作模板中使用了一个新元素(“Publication Date”)和一个自定义jsp组件,我从原子调用中引用它来生成“更新日期”字段。我试图做的只是检查我添加的元素是否存在不是null,如果它然后使用更新的日期字段,如果它不是那么使用“Publication Date”元素。

我试过了:

DocumentIdIterator docIdsIter = workspace.findContentByPath(request.getRequestURI());
if (docIdsIter.hasNext()) {
    Document doc = (Document)workspace.getById(docIdsIter.nextId());
                    // Cast to Content to retrieve the Publication date from the date component
    Content myContent = (Content)doc;
                    // Get the Publication date
    if (myContent.hasComponent("Publication Date")){
        out.write("I am getting here");
        DateComponent dateComponent =     (DateComponent)myContent.getComponent("Publication Date");
        if (dateComponent != null){
             out.write(dateComponent.toString());
        } else {
            //out.write(last modified date);
        } 
   } else {
        //out.write(last modified date);
   }

但我甚至没有进入第一个if条件。我觉得有一个简单的方法可以简单地检查元素是否存在,任何帮助都会被激活。

1 个答案:

答案 0 :(得分:1)

您可以使用[Property]标签从内容项中提取日期。

[Property context="autofill" type="content" format="DATE_TIME_SHORT" field="lastmodifieddate"]

可能类似于您正在寻找的东西。

有很多不同的选项可用于格式和字段以获得所需的日期。

格式= “DATE_SHORT”
格式= “DATE_MEDIUM”
格式= “DATE_LONG”
格式= “DATE_FULL”
格式= “DATE_TIME_SHORT”
格式= “DATE_TIME_MEDIUM”
格式= “DATE_TIME_LONG”
格式= “DATE_TIME_FULL”
格式= “TIME_SHORT”
格式= “TIME_MEDIUM”
格式= “TIME_LONG”
格式= “TIME_FULL”

lastmodified - 显示上次修改日期和最后一次更改消息 lastmodifieddate - 显示上次修改日期。
creation - 显示创建日期。
creationdate - 显示创建日期 lastmodifier - 显示上次修改项目的用户的名称。
creator - 显示创建项目的用户的名称。