首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >展示网页-在Alfresco 5共享社区中文档的形式预览

展示网页-在Alfresco 5共享社区中文档的形式预览
EN

Stack Overflow用户
提问于 2016-02-18 13:30:25
回答 1查看 687关注 0票数 2

我创造了一种壁画形式。我想嵌入网页预览组件在它上。我为找到提供了一个ALFERCO4.2.1的源代码示例。

首先,它创建一个ftl文件。

代码语言:javascript
复制
<@script type="text/javascript" src="${page.url.context}/res/components/form/custom-web-preview.js"></@script>
   <@script type="text/javascript" src="${page.url.context}/res/components/preview/web-preview.js"></@script>
   <@script src="${url.context}/res/components/preview/web-preview.js" />
   <@script src="${url.context}/res/components/preview/WebPreviewer.js" />
   <@script src="${url.context}/res/js/flash/extMouseWheel.js" />
   <@script src="${url.context}/res/components/preview/StrobeMediaPlayback.js" />
   <@script src="${url.context}/res/components/preview/Video.js" />
   <@script src="${url.context}/res/components/preview/Audio.js" />
   <@script src="${url.context}/res/components/preview/Flash.js" />
   <@script src="${url.context}/res/components/preview/Image.js" />

 <script type="text/javascript">//<![CDATA[
(
function()
{
    new Alfresco.customControl("${fieldHtmlId}").setMessages(${messages});
}
)
();

//]]></script>

<div id="${fieldHtmlId}">
   <div id="web-preview">

 </div>
</div>

在客户端java-script的onReady方法中添加以下代码后

代码语言:javascript
复制
Alfresco.util.Ajax.request(
         {
           method: "GET",
           url: Alfresco.constants.URL_SERVICECONTEXT + "components/preview/web-preview?nodeRef=${NODEREF}&htmlid=${ID}",,
           successCallback:
           {
            fn: function(o)
            {
        Dom.get("web-preview").innerHTML = o.serverResponse.responseText;
            },
            scope: this
           },
           failureMessage: "Failed"
        });
         }

当我在alfresco 5社区上尝试这个时,形式失败了。

这有可能在新版本的Alfresco中工作吗?我应该在哪里添加Ajax请求?是否有更好的方法来实现这一点?

EN

回答 1

Stack Overflow用户

发布于 2016-02-20 13:10:58

这篇文章中的代码是不完整的,并且依赖于许多尚未包含的自定义代码。

我不清楚:

  1. 什么是自定义的网页预览. is?
  2. 在ftl中实例化的是什么javascript类Alfresco.customControl? 新Alfresco.customControl("${fieldHtmlId}").setMessages(${messages})
  3. 添加onReady的“客户端”javascript是什么?
  4. 下面的url试图调用什么? "components/preview/web-preview?nodeRef=${NODEREF}&htmlid=${ID}“+ Alfresco.constants.URL_SERVICECONTEXT

我不知道共享库中有语法${}的占位符。在共享代码中,有时使用YAHOO.lang.substitute替换语法{}指定的占位符,如下例所示:

代码语言:javascript
复制
var templateUrl = YAHOO.lang.substitute(Alfresco.constants.URL_SERVICECONTEXT + "components/form?itemKind={itemKind}&itemId={itemId}&mode={mode}&submitType={submitType}&formId={formId}&showCancelButton=true",
{
   itemKind: "type",
   itemId: "cm:folder",
   mode: "create",
   submitType: "json",
   formId: "doclib-common"
});

传递给该方法的javascript对象用于指定占位符的实际值。在本文中建议的代码中,我不知道如何使用${ID}和${NODEREF}来实现共享。

我很抱歉,但在我看来,这篇文章的作者只是在工作中复制和粘贴了在他的项目中编写的一些代码,而没有测试他所写的内容是否是独立的和正确的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35482828

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档