2017-05-08 93 views
0

我目前使用Marklogic spring boot演示。到目前为止,我已经能够添加索引,构面,前端逻辑等等。Marklogic Spring Boot - 安装Rest端点

现在,我试图将某些语义逻辑分层到一个休息端点。

我在查询控制台中写了一个简单的查询,并试图将其添加到src/main/ext文件夹中,以便它将被ml-gradlebootrun部署。

现在。该文件将被部署到test-modules数据库,可见曾经救过(我可以看到它在资源管理器中的URI /ext/my-endpoint下,我也尝试添加了一个名为rest-api文件夹,但只是把它添加到/ext/rest-api/my-endpoint

在的顶部端点我把它宣布为 `模块命名空间EXT =“http://marklogic.com/rest-api/resource/my-endpoint”。

然而,当我浏览到不存在的URL应该住在http://localhost:8090/LATEST/resources/my-endpoint?

它告诉我

所以我可以在模块数据库中看到它,但我无法在HTTP上使用它。查询工作在查询控制台(并且是相当琐碎,和查询JSON属性词查询的)

我的问题是:

我怎样才能正确地更新marklogic弹簧引导框架正确部署休息端点。

回答

1

所以我觉得它似乎。

手动创建文件并未正确注册分配工作流程。

相反,我创建使用ml-gradle

gradle mlCreateResource -PresourceName=my_endpoint

这将创建一个名为服务新文件夹,创建端点对我来说,这样就可以有代码编写上的资源。

仍然不确定什么gradle在做特别的事情,所以我可以知道手动执行此操作的正确方法是什么,但至少可以。

+1

是的,你需要把它放在'src/main/ml-modules/services /'中,该文件夹的内容将以特殊方式处理,而不仅仅是上传到模块数据库,比如src /主/ ml的模块/ EXT /'。这是因为REST扩展需要使用针对REST api的特殊http调用来安装:http://docs.marklogic.com/REST/PUT/v1/config/resources/ [name] – grtjn

+1

关于ml- gradle加载Client REST API支持的各种模块 - https://github.com/marklogic-community/ml-gradle/wiki/How-modules-areloadedloaded – rjrudin