gpt4 book ai didi

Alfresco 共享 UI 标题自定义

转载 作者:行者123 更新时间:2023-12-01 10:45:38 25 4
gpt4 key购买 nike

我想自定义共享 UI 标题,例如删除一些按钮,如人物和共享文件。我发现这可以通过修改位于 tomcat/webapps/share/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/share/imports 文件夹中的 share-header.lib.js 文件来完成。在修改此文件时,我可以看到更改。但正如这些链接中所建议的那样: https://forums.alfresco.com/forum/developer-discussions/alfresco-share-development/correctbest-way-customize-shares-ui-07182011 http://ecmarchitect.com/archives/2010/09/07/1212

正确的方法是在 tomcat/webapps/share/WEB-INF/classes/alfresco/web-extension 目录下创建相同的文件夹结构,并将修改后的文件放在那里。我创建了文件夹层次结构,并将更改后的 share-header.lib.js 文件复制到此文件夹中,但现在网站上看不到更改。我错过了什么吗?谁能建议正确的方法来做到这一点?

谢谢!

最佳答案

一般准则 tomcat/webapps/share/WEB-INF/classes/alfresco/web-extension 覆盖 tomcat/webapps/share/WEB-INF/classes/alfresco 是正确的,但有一个很大的警告:它只适用于网络脚本。

在您的情况下, header 的生成涉及两个文件:

  • WEB-INF/classes/alfresco/site-webscripts/org/alfresco/share/header/share-header.get.js
  • WEB-INF/classes/alfresco/site-webscripts/org/alfresco/share/imports/share-header.lib.js

前者确实属于一个 webscript(你会在同一目录中找到一个 share-header.get.desc.xml)。可以通过将文件放在 WEB-INF/classes/alfresco/web-extension 下的类似目录结构中来覆盖此文件,正如您在研究中正确找到的那样。

然而,后者不是网络脚本的一部分。相反,它是通过导入指令导入的。导入是一种完全不同的机制,WEB-INF/classes/alfresco/web-extension 技巧在这里不起作用。

share-header.get.js 的第一行阐明了这一点:

<import resource="classpath:/alfresco/site-webscripts/org/alfresco/share/imports/share-header.lib.js">

model.jsonModel = {
rootNodeId: "share-header",
...

导入的资源是从类路径中直接加载的,没有任何web-extension 覆盖。要导入自定义版本的 share-header.lib.js,第一行应该是:

<import resource="classpath:/alfresco/web-extension/site-webscripts/org/alfresco/share/imports/share-header.lib.js">

所以总而言之,我的建议是自定义 header/share-header.get.js(只是第一行)和 imports/share-header.lib.js(正如您已经完成的那样)。

请记住,当您创建新的自定义文件时,重新启动 Alfresco 会更安全。另一方面,当您编辑现有的自定义文件时,访问本地安装的/share/service/index 并单击 Refresh Web ScriptsClean Dependency Caches 就足够了.

关于Alfresco 共享 UI 标题自定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26592279/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com