Ich verwende derzeit die Marklogic spring boot
Demo. Bisher war es mir möglich, Indizes, Facetten, Front-End-Logik usw. hinzuzufügen.Marklogic Spring Boot - Installation eines Rest-Endpunkts
Im Moment versuche ich, einige semantische Logik in einen Rest-Endpunkt zu schichten.
Ich schrieb eine einfache Abfrage in der Abfrage-Konsole und versucht es zu dem src/main/ext
Ordner hinzufügen, so dass es durch die ml-gradle
bootrun
bekommen eingesetzt würde.
Gerade jetzt. Diese Datei wird auf die test-modules
Datenbank erhalten entfaltet, und sichtbar einmal gespeichert (ich es im Explorer unter URI /ext/my-endpoint
sehen kann. Ich habe auch versucht, einen Ordner Hinzufügen rest-api
genannt, aber fügt hinzu, dass es nur zu /ext/rest-api/my-endpoint
An der Spitze der Endpunkt ich habe es als `Modul Namensraum ext erklärt =„http://marklogic.com/rest-api/resource/my-endpoint“;.
Allerdings, wenn ich an die URL navigieren sollte es bei http://localhost:8090/LATEST/resources/my-endpoint?
leben werden mir es sagt es nicht existiert
So kann ich es in der Moduldatenbank sehen, aber ich kann es nicht auf HTTP verwenden. die Abfrage funktioniert in der Abfrage-Konsole (und ist ziemlich trivial und-Abfrage von json-property-Wort-Anfragen)
Meine Frage ist:
Wie kann ich den Marklogic-Feder-Boot-Rahmen richtig aktualisieren, um Rest-Endpunkte ordnungsgemäß bereitstellen.
Ja, Sie müssen es in 'src/main/ml-modules/services /' setzen, der Inhalt dieses Ordners wird in einer speziellen Weise behandelt und nicht nur in die Moduldatenbank hochgeladen, wie der Inhalt von 'src/Haupt/ml-Module/ext/'. Dies liegt daran, dass REST-Erweiterungen mit einem speziellen http-Aufruf gegen die REST-API installiert werden müssen: http://docs.marklogic.com/REST/PUT/v1/config/resources/[name] – grtjn
Etwas mehr Informationen darüber, wie ml- Gradle lädt die verschiedenen Arten von Modulen, die von der Client-REST-API unterstützt werden - https://github.com/marklogic-community/ml-gradle/wiki/How-modules-are-loaded – rjrudin