问题标签 [alfresco-webscripts]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
511 浏览

java - 用于创建文件夹的 Alfresco Java 支持的 webscript 不会创建文件夹

我正在为 Alfresco 开发一个 Java 支持的 webscript,它需要根据发送给它的路径创建一个文件夹结构。有些已发送的文件夹可能已经存在,有些可能不存在。这是我得到的代码:

调试脚本我可以看到创建了新的节点引用,但是当我去共享时实际上没有创建任何内容。

我读到我可能需要使用事务,因为该脚本将被多个线程访问,并且我尝试使用重试事务帮助程序,但结果相同。

0 投票
0 回答
128 浏览

javascript - 在 Alfresco 4 中获取组名

我正在从工作流执行一个脚本,以从“选择组”(docWorkflow_selectgroup)cm:authorityContainer 为mail.parameters.to_many编译名称。

在 Alfresco 5.0 中,我可以使用以下代码:

如果选择的第一个组是 ALFRESCO_ADMINISTRATORS,则此代码会将GROUP_ALFRESCO_ADMINISTRATORS设置为数组的第一个元素。这是mail.parameters.to_many参数所需的正确格式。

但是,我们还有另一台服务器仍在运行 Alfresco 4,并且对于选择的任意数量的组,相同的代码返回null,从而导致以下错误:

org.alfresco.scripts.ScriptException:07060563 无法执行提供的脚本:邮件操作的所有收件人均无效

哪些更改将允许此代码在 Alfresco 4 中工作?

0 投票
0 回答
413 浏览

alfresco - 使用 Alfresco Api 更快地获取节点的子节点

我在我的 Java 支持的 webscript 上使用 alfresco api。我有一个 uuid,我用这个 uuid 做了一个新的 NodeRef,然后我使用 NodeService 中的 getChildAssoc 来获取所有的直接子节点。但是在包含 100 多个子文件夹的文件夹上,它需要的时间太长。是否有另一种快速获取节点所有直接子节点的方法?你知道的最快的方法。

谢谢!

0 投票
1 回答
1252 浏览

alfresco - 如何在 Alfresco 5 中正确实现 POST webscript 而不会导致 CSRF 异常?

我创建了一个与 Alfresco 5 社区版一起使用的模块扩展。一切都很好,我的 .get 方法得到了妥善处理,它们可以正常显示。

在页面上,我有一个按钮,它发回服务器以显示结果(现在它是空的,用于测试)。当我单击按钮时,出现服务器错误:

检查 webscripts urihttp://localhost:8080/share/page/index/uri/components/console/reset-dashboards我可以看到所有内容都已正确注册

这是 GET 网页脚本的信息:

这是 POST webscript 的信息:

同样,当我单击页面上的按钮发布到 webscript 时,它给了我一个Possible CSRF attack例外。我该如何纠正?是否可以在模块扩展jar文件中执行此操作?

更新

我确实注意到作为 Alfresco 的一部分发布的所有其他脚本都包含Alfresco-CSRFToken标题和同名 cookie。我的脚本仅包含Alfresco-CSRFToken作为 cookie,并且作为标题丢失。我不确定如何确保它作为标题存在。

0 投票
1 回答
634 浏览

alfresco - 是否可以为 post 方法扩展 Alfresco 5 网络脚本?

我正在尝试site creation通过创建一个web script. 我正在创建一个包含模块扩展名的 jar 文件。

我已经通过添加一个新的站点类型成功地修改了实际的站点创建(这只是为了测试目的)。我通过将以下内容添加到extension-module.xml文件中来做到这一点:

/config/alfresco/web-scripts/create-site.get.js

tomcat/webapps/share/WEB-INF/lib通过 Alfresco 模块管理页面添加并激活时,它可以完美运行。我可以TEST在站点类型列表中看到。

我正在尝试做完全相同类型的事情,但使用create-site.post.json.js. 无论我做什么,我都无法create-site.post.json.js启动我的网络脚本。可以扩展.post.json.js文件create-site吗?

更新 如果有人想查看原始源代码,这里是:Module Srouce

模块中的所有内容都可以正常工作,除了create-site.post.json.js. 我知道deleteDashboard.post.json.js 文件中的方法可以正常工作,这是我一直用来尝试调试脚本的方法(以防调试器正在运行它但由于某种原因没有闯入它。如果它运行,它应该删除测试站点“good-site”的仪表板,所以如果它工作,仪表板将是空的/不存在。

0 投票
1 回答
85 浏览

alfresco - 如何在不重新启动 Alfresco/Tomcat 服务的情况下刷新以编程方式更改的站点仪表板?

我已经创建了一个 web-script 模块扩展并验证了它可以正常工作。它所做的是从一个站点获取dashboard.xml相关page.component-X-Y.type~id~dashboard.xml文件,删除另一个站点上的所有仪表板相关文件,然后将源文件复制到已删除它们的新站点。

伪代码

renameShortNames只需将仪表板文件中的站点 ID 重命名为新站点的 ID。

这一切都有效,我已经测试并验证了它。我的问题是,当我转到http://alfrescosite.com/alfresco/s/remoteadm/get/s/sitestore/alfresco/site-data/pages/site/site2-shortname/dashboard.xml它时,它会向我显示新的仪表板布局,site1-shortname从中是正确的行为,但是当我转到 Alfresco 共享中的实际站点仪表板时,它会显示旧site2-shortname仪表板。我可以让新仪表板显示的唯一方法是重新启动 Alfresco/Tomcat 服务。我什至尝试使用不同的浏览器查看仪表板,以防万一这是本地缓存问题,但事实并非如此。

关于如何使仪表板刷新到新布局而不必每次都重新启动 Alfresco/Tomcat 服务的任何想法?

0 投票
0 回答
121 浏览

alfresco - 通过 Rest API 将文档保存在 Alfresco 共享文件夹中

我正在尝试将文件上传到共享文件夹...这是我的代码。

谁能帮我?谢谢。

0 投票
2 回答
641 浏览

pagination - Alfresco webscript (js) and pagination

I have a question about the good way to use pagination with Alfresco. I know the documentation (https://wiki.alfresco.com/wiki/4.0_JavaScript_API#Search_API) and I use with success the query part. I mean by that that I use the parameters maxItems and skipCount and they work the way I want. This is an example of a query that I am doing :

The problem is that, if I get the number of results I want (100 for example), I don't know how to get the maxResults of my query (I mean the total amount of result that Alfresco can give me with this query). And I need this to :

  1. know if there are more results
  2. know how many pages of results are lasting

I'm using a workaround for the first need : I'm doing a query for (maxItems+1), and showing only maxItems. If I have maxItems+1, I know that there are more results. But this doesn't give me the total amount of result.

Do you have any idea ?

0 投票
1 回答
170 浏览

java - Web 脚本 groovy - Alfresco

我正在尝试在 groovy 中制作一个 Web 脚本并在 Alfresco 上运行该 Web 脚本。但是,我不知道该怎么做。我阅读了教程,但还没有得出任何结论……有人知道在 groovy 中运行 Web 脚本的所有步骤吗?我需要哪些文件?我的想法是在 Alfresco 上集成一个 groovy 应用程序。

例如,我正在尝试测试以下 Web 脚本之一:https ://github.com/pmonks/alfresco-groovy-webscripts

但我得到了错误:

我也尝试了 Alfresco 示例中已经存在的 Web 脚本,但出现错误,例如:

0 投票
1 回答
716 浏览

html - HTTP 状态 404 - /alfresco/testCMISfromJS.html

我正在尝试在文件夹的 Alfresco 上运行 HTML 文件(alfrescodir)/tomcat/webapps

我尝试运行http://localhost:8080/alfresco/testCMISfromJS.html,但出现错误:

我该如何解决这个问题?请帮我。