我一直在阅读新功能的David Drapers' blog - 共享网页的扩展,但我没有找到任何有效的例子。什么是文件命名和结构约定?
从我收集的内容来看,我有一个模块配置文件,我不知道如何命名或放置它(share/WEB-INF/classes/alfresco
?)
另外,我了解我的自定义客户端资源(.js和.css文件)转到JAR文件中的META-INF/custom-dashlet/extension/
。它是否正确?最后,* .get.js和* .get.html.ftl转到webscripts/com/mycompany/mypackage/*
?
所以我现在有:
*share/WEB-INF/lib/mypackage.jar*
并在其中:
*META-INF/mypackage/extension/myfile.js
webscripts/com/mycompany/mypackage/myfile.get.js
webscripts/com/mycompany/mypackage/myfile.get.html.ftl
*
和
*share/WEB-INF/classes/alfresco/something.xml*
答案 0 :(得分:5)
此问题也发布在Alfresco论坛:https://forums.alfresco.com/en/viewtopic.php?f=48&t=46438
提供的答案如下:
扩展模块是一个Surf配置对象,因此您应该将包含模块配置的XML文件放在Surf配置被拾取的任何位置......例如<web-server>/webapps/share/WEB-INF/classes/alfresco/site-data
(有很多地方可以选择冲浪配置,但alfresco/site-data
上的classpath
是最常见的。扩展配置文件应放在目录中的extensions
文件夹中。因此,您可以将扩展配置文件放在:alfresco/site-data/extensions
或alfresco/web-extension/site-data/extensions
中,例如。
您可以创建包含此文件夹结构的JAR文件。扩展引用的所有内容(例如WebScripts,其他Surf配置对象,例如Pages,Template-Instances,Components等)应该放在它们的正常位置。这些也可以内置到JAR文件中。
如果要从JAR文件访问资源(例如CSS,图像,JS),请将它们放在JAR的META-INF文件夹中。您应该将JAR文件放在<web-server>/webapps/share/WEB-INF/lib
目录中(显然,您的服务器需要重新启动以获取新的JAR内容)。
WebScripts应该在(在类路径上):
alfresco/site-webscripts
alfresco/web-extension/site-webscripts
webscripts
您还可以在Surf配置中配置其他位置以加载Surf config objects/WebScripts
。它几乎可以无限制地定制,但您应该只是坚持为Share配置的默认位置。