リソースタイプ= "this/is/a/test"のSlingサーブレットがあります。AEMのsiteadminからページを非表示にする方法は?
@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 {
私は青写真におけるブランドとロケールを持つMSM構造を有しています。
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
テストサーブレットには、スリング:resourceType = "this/is/a/test"があります。
サーブレットでは、パスを使用して応答を決定しています。 例: パスが/ content/SampleLiveCopies/OrganizationOne/America/en_US/bin/test-servletの場合 英語のアメリカ関連のデータを返します。
しかし、「bin/test-servlet」というページがsiteadminに表示されるため、作成者は編集する権限を持っています。
したがって、siteadminでbin/test-servletページを非表示にしたいとします。
siteadminの下にサーブレットのページを作成する必要がありますか?サーブレットは[パス情報を取得できます](https://sling.apache.org/apidocs/sling5/org/apache/sling/api/SlingHttpServletRequest.html#getRequestPathInfo())。あなたはen_USの下でホームページからAJAX呼び出しを介してサーブレットを呼び出しますか?あるいはユースケースが違うのでしょうか? –
はい。ホームページから、私はAJAX呼び出しでサーブレットをリクエストしています。 URLから国、言語を認識するサーブレットフィルタがあります。これにより、サーブレットはデータを提供することができます。サーブレットのパスを使用する際の問題は、応答がディスパッチャでキャッシュされず、パフォーマンスが低下することです。 – Dileepa