Ich habe ein Sling Servlet mit resourceType = "dies/ist/a/test".Wie kann ich die Seite von siteadmin in AEM ausblenden?
@SlingServlet(methods = { "GET" })
@Properties({ @Property(name = "service.pid", value = "com.test.TestServlet", propertyPrivate = false),
@Property(name = "sling.servlet.resourceTypes", value = {"this/is/a/test"})})
public class TestServlet extends SlingSafeMethodsServlet {
Ich habe eine MSM-Struktur mit Marke und Gebietsschema in Blueprint.
SampleBlueprint
Organization One
en_US
Home Page
Contact US
bin
test-servlet
SampleLiveCopies
Organization One
America
en_US
Home Page
Contact US
bin
test-servlet
fr_US
Home Page
Contact US
bin
test-servlet
Canada
en_CA
Home Page
Contact US
bin
test-servlet
Das Test-Servlet hat sling: resourceType = "dies/ist/a/test".
Im Servlet verwende ich den Pfad, um die Antwort zu bestimmen. Beispiel: Wenn Pfad ist/Inhalt/SampleLiveCopies/OrganizationOne/America/de_US/bin/test-Servlet würde ich Daten, die Amerika in englischer Sprache verwandt ist zurückgeben.
Aber da die Seite "bin/test-servlet" in siteadmin sichtbar ist, hat der Autor das Steuerelement, um es zu bearbeiten.
Daher möchte ich die Seite bin/test-servlet in siteadmin ausblenden.
Müssen Sie Seite für Servlet unter Siteadmin erstellen? Das Servlet kann [Pfadinfo abrufen] (https://sling.apache.org/apidocs/sling5/org/apache/sling/api/SlingHttpServletRequest.html#getRequestPathInfo()). Würden Sie das Servlet über den AJAX-Anruf von der Seite "Home Page" unter "en_US" erreichen? Oder der Anwendungsfall ist anders? –
Ja. Von der Homepage würde ich Servlet durch AJAX-Anruf anfordern. Ich habe einen Servlet-Filter, der Land, Sprache von der URL erkennt. Dies bietet die Fähigkeit des Servlets, Daten bereitzustellen. Das Problem bei der Verwendung von Pfad für Servlet besteht darin, dass die Antwort im Dispatcher nicht eingelöst wird und die Leistung beeinträchtigt wird. – Dileepa