问题标签 [roxy]

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 投票
3 回答
174 浏览

ruby-on-rails - Marklogic Web 界面更新 xml 文档

什么是构建用于更新 marklogic 数据库中的 xml 文档的 Web 界面的好方法。我遇到了 roxy,这是一个用于配置和部署 marklogic 应用程序的 ruby​​ gem,但是在玩了一段时间之后,它似乎对查询和显示数据比更新文档更有帮助。

0 投票
3 回答
206 浏览

marklogic - Roxy 可用于部署通用 MarkLogic 应用程序吗?

我开发了一个 MarkLogic应用程序,它既不是 MVC 也不是 REST 应用程序(更准确地说,它是一个不使用标准 ML REST API 的 REST API)。

我想使用Roxy来打包和部署这个应用程序,但是当你创建一个新项目时,Roxy 包括 ML 的 REST API 或 MVC 框架。

是否可以剥离 Roxy 部署的内容,或者我是否必须找到其他解决方案,例如MarkLogic 打包,它的功能比 Roxy 少得多?

0 投票
2 回答
160 浏览

marklogic - 如何使用 Roxy 从 marklogic 服务器检索配置

我开始使用Roxy来配置我的 marklogic 集群(版本 8)。这个工具允许我在许多“集群”上部署我的配置,避免手动进行。

在我的测试期间,我手动配置了一个集群(通过 Web 管理 - 端口 8001)。我想知道是否可以将此配置从服务器检索到我的本地计算机。我想在本地获取它以用于我的期货部署。

谢谢。

问候, 罗曼

0 投票
1 回答
117 浏览

amazon-ec2 - 建议使用开发、生产或本地环境变量的 MarkLogic 8 的 roxy 设置?

默认情况下,可以使用 MarkLogic 的 ruby​​ roxy 配置运行三个环境变量(roxy 脚本在这里:https ://github.com/marklogic/roxy )。这三个变量是localdevprod。虽然,可以添加其他环境变量。

和服务器的最佳设置是local什么?prod 服务器位于 ec2 AWS 上。devprod

我认为,在本地,应该只有 1 或 2 个森林,而在服务器上,4 核可能只有 1 或 2 个森林。森林可以并行运作。我认为在开发环境中,应该运行测试。此外,有兴趣了解 MarkLogic DB 在本地和 ec2 实例上运行时缓存了多少空间。

我相信,默认情况下 prod 环境变量会运行测试(尽管这可能是错误的)。

一些信息:

0 投票
1 回答
145 浏览

rest - 未能创建自定义用户权限来限制内容

我正在努力正确设置我的用户权限/特权/角色以获得我需要的行为。

我正在使用 MarkLogic 8 和 Roxy 来创建和部署应用程序。

此应用程序具有不同的用户,这些用户的内容应仅限于单个用户。但他们也参与需要共同协作的项目。

我看过这个有用的博客关于 github 问题 303 的讨论,但仍然无法正确处理。

默认 roxy 应用用户角色:

我的自定义角色:

我已经测试并尝试了上面博客中描述的内容,但是使用这些设置我无法访问任何文档,显然没有其他扩展访问权限。如果我给我的用户 {app-role} 它给出了用户可以看到其他用户的私人内容的问题......因为所有用户都有'rest-reader'角色......所以我需要限制默认 - app 角色不使用 rest-reader 角色并使用 rest-reader 权限但不能让它工作......

我正在考虑的一种选择是document-insert()对受限内容使用权限,但如果我可以正确设置,这应该可以通过正确的角色和权限实现,对吧?

添加

回应 Grtjn 的回答:谢谢 4 您的评论,我想我对 REST 角色感到困惑。如果我在 git 上查看 roxy 应用程序中的默认角色,这些角色看起来是空的,但是当我将我的 roxy 应用程序类型设置为 REST 应用程序时,事情似乎变得更加复杂。主要的困惑是我需要哪些角色和权限才能让第二个(独立)角色能够使用 REST 端点?xdmp:(value,add-response-header, invokes etc) 权限到底在做什么和需要什么?在我的示例中,为了让用户能够访问 REST api,他/她需要以下角色:

然后我们开始讨论休息读者应该是特权还是角色?

所以一个更具体的问题:

访问由 roxy REST 类型应用程序创建的 REST 端点需要的最小角色/权限集是多少?

0 投票
1 回答
36 浏览

marklogic - app-modules-db 的 MarkLogic Roxy 配置

在 Roxy 项目的 default.properties 文件中,这两个设置有什么区别?

0 投票
1 回答
524 浏览

xquery - 将文档插入特定数据库 MarkLogic

我正在使用 roxy 建立一个数据库,这与“文档”数据库不同。我想在该数据库中插入一个配置文件。

我在 xquery ml-1.0 中有这个功能

xdmp:document-insert文档插入到默认的“文档”数据库中。我环顾四周,找不到将这个文档加载到这个数据库中的方法。我只找到了一种使用 xdmp:document-load ( https://docs.marklogic.com/xdmp:document-load )将文档插入特定森林的方法。

有没有办法让我说把这个东西加载到这个数据库中,最好只是作为一个 xquery 参数?

0 投票
2 回答
105 浏览

xquery - 搜索:搜索在查询控制台中返回结果,但在 http get 从应用程序中命中时没有结果?

我这里有一个奇怪的情况。我正在尝试构建一个将 http get 请求发送到 MarkLogic 服务器的应用程序。它命中了执行的 XQuery 代码search:search("")。我将空查询传递给搜索,因此返回默认的相关结果。
我正在使用 Roxy 进行部署。当我通过命令调用典型的 Roxy 部署函数时 -

它加载了所有文档,然后当我点击 localhost:7040 时,我得到了预期的结果。到目前为止,一切都很好。
现在,我重写 Roxy 的现有方法 deploy_content 并定义调用 XQuery 函数的新方法,该函数执行xdmp:document-load()将所有数据加载到内容数据库。这是代码片段 -

现在,当我点击应用程序时,我得到 0 结果,而相同的代码在查询控制台中运行良好。我认为这与角色和权限概念有关,因为当我从 roxy 向新创建的用户提供管理员角色时,我得到了预期的结果。我不想为稍后将使用我的应用程序的默认用户提供管理员角色。那么我需要在角色、权限和身份验证方面进行哪些修改才能解决我的问题?
注意:当我点击 localhost:7040 时,它不会要求进行身份验证。

是否有一个功能可以获取该用户角色下的所有默认权限。
这是用于应用服务器的用户,因为它更像是普通安装。
用于查询控制台的用户是 admin。
我将命令运行xdmp:document-get-permissions()到加载文档之一,但它返回空序列。
xdmp:document-get-permissions("/a-ha+Take-on-Me.xml").
身份验证方法=应用程序级别

0 投票
2 回答
397 浏览

xquery - MarkLogic - 自定义搜索片段

我正在使用 Roxy 来管理我的项目。也使用 MarkLogic 8.0-6.1

我正在尝试提交一个 searchTerm,并返回一个自定义格式search:snippet

以下是我正在采取的完整步骤:

./../roxy/ml new test-app --server-version=8 --app-type=rest

配置我的 build.properties

cd test-app/ ./ml local bootstrap

现在我有了我的项目结构。

创建文件 - test-app/rest-api/ext/show-search.xqy

上面的 GET 请求transform-results apply=raw正确使用了选项、部署和功能(我有一些测试文档)。

但是我不想返回整个文档,我想返回匹配的整个 json 部分,无论匹配发生在那个部分的哪个位置(较低级别)

所以我尝试自己写snipper

创建文件 - test-app/rest-api/ext/show-search-snipper.xqy

然后我将调用更新search:search为以下内容

现在我应该拥有我需要的一切(我认为)

我运行部署./ml local deploy rest

并得到以下

Minty-linux test-app # ./ml local deploy rest 在 /opt/this-is-a-test/test-app/rest-api/config/properties.xml 中加载 REST 属性 在 /opt/this- 中加载 REST 选项is-a-test/test-app/rest-api/config/options

从 /opt/this-is-a-test/test-app/rest-api/ext 加载 REST 扩展

错误:400“错误请求”错误:{“errorResponse”:{“statusCode”:400,“status”:“错误请求”,“messageCode”:“RESTAPI-INVALIDCONTENT”,“消息”:“RESTAPI-INVALIDCONTENT:( err:FOER0000) 无效内容:无效的 show-search-snipper 扩展:show-search-snipper 不是有效模块,或者在 http://marklogic.com中不提供扩展功能(删除、获取、放置、发布) /rest-api/resource/show-search-snipper 命名空间"}}

所以我尝试将show-search-snipper.xqy文件上移 1 级(到 test-app/rest-api/show-search-snipper.xqy`

运行部署 Deployment Works 没有错误 点击 URL 并收到以下信息

500 内部服务器错误 INTERNAL ERROR RESTAPI-INVALIDREQ: (err:FOER0000) 无效请求:原因:扩展显示搜索不存在。. 有关详细信息,请参阅 MarkLogic 服务器错误日志。

虽然我知道扩展程序是正确创建的,但在引入自定义 snip 功能之前它运行良好。(应用=“原始”)

有什么想法可以应用我的自定义剪辑功能或我在部署中做错了什么?


在此处输入图像描述

0 投票
1 回答
131 浏览

xquery - 从 Oxygen Xml 编辑器添加新模块从 http get 命中时会引发错误,但在通过 Roxy 部署时工作正常?

我有一个WebDAV连接并且有我的Xquery代码库的目录结构。当我右键单击并xqyOxygen Xml Editor's文件资源管理器创建一个新文件,定义一个module namespace,我的逻辑,然后将库模块导入主xqy文件时,我收到以下错误:

404 未找到

旧错误

在此处输入图像描述
所以每当我导入我的新模块时,我都会收到这个错误。

显然不是这样。

但令人惊讶的是,当我使用 Roxy 部署相同的单个文件时,它工作得很好。

我不认为 Oxygen 指向其他地方,因为当我在现有文件或通过 Roxy 部署的同一文件中进行代码更改时,它会立即反映。那么发生了什么?