AEM konfigurationer används för att hantera inställningar i AEM och fungerar som arbetsytor.
En konfiguration kan övervägas från två olika vypunkter.
Sammanfattning: ur administratörens synvinkel är konfigurationer hur du skapar arbetsytor för att hantera inställningar i AEM, medan utvecklaren bör förstå hur AEM använder och hanterar dessa konfigurationer i databasen.
Oavsett perspektiv har konfigurationerna två huvudsyften AEM:
AEM administratör och författare kan betrakta konfigurationer som arbetsytor. De här arbetsytorna kan användas för att samla ihop grupper av inställningar samt tillhörande innehåll för organisering genom att implementera åtkomsträttigheter för dessa funktioner.
Du kan skapa konfigurationer för många olika funktioner i AEM.
En administratör kan till exempel skapa två konfigurationer för redigerbara mallar.
Administratören kan sedan skapa allmänna sidmallar med WKND-General-konfigurationen och sedan använda mallar som är specifika för tidskriften under WKND-Magazine.
Administratören kan sedan koppla WKND-general till allt innehåll på WKND-webbplatsen. Konfigurationen av WKND-Magazine skulle bara kopplas till tidskriftswebbplatsen.
Genom att göra detta:
Liknande inställningar kan göras inte bara för redigerbara mallar utan även för molnkonfigurationer, ContextHub-segment och Content Fragment-modeller.
Med Configuration Browser kan en administratör enkelt skapa, hantera och konfigurera åtkomsträttigheter för konfigurationer i AEM.
Det går bara att skapa konfigurationer med hjälp av Konfigurationsläsaren om användaren har admin
rättigheter. admin
Rättigheter krävs också för att tilldela behörighet till konfigurationen eller på annat sätt ändra en konfiguration.
Det är mycket enkelt att skapa en ny konfiguration i AEM med hjälp av Configuration Browser.
Logga in AEM as a Cloud Service och välj verktyg -> Allmänt -> Konfigurationsläsaren.
Tryck eller klicka Skapa.
Ange en Titel och Namn för din konfiguration.
Kontrollera vilken typ av konfigurationer du vill tillåta.
Tryck eller klicka Skapa.
Konfigurationer kan vara kapslade.
Om du tänker på konfigurationer som arbetsytor kan åtkomsträttigheter anges för dessa konfigurationer för att framtvinga vem som får och inte får komma åt dessa arbetsytor.
Det går inte att avmarkera en funktion när konfigurationen har skapats.
Som utvecklare är det viktigt att du vet hur AEM as a Cloud Service fungerar med konfigurationer och hur den bearbetar konfigurationsupplösningen.
Även om administratörer och användare kan tänka sig konfigurationer som arbetsplatser om du vill hantera olika inställningar och innehåll är det viktigt att förstå att konfigurationer och innehåll lagras och hanteras separat av AEM i databasen.
/content
är hemma i allt innehåll./conf
är startsida för all konfiguration.Innehållet refererar till den associerade konfigurationen via en cq:conf
-egenskap. AEM utför en sökning baserat på innehållet och dess kontextuella cq:conf
för att hitta rätt konfiguration.
I det här exemplet antar vi att du har programkod som är intresserad av DAM-inställningar.
Conf conf = resource.adaptTo(Conf.class);
ValueMap imageServerSettings = conf.getItem("dam/imageserver");
String bgkcolor = imageServerSettings.get("bgkcolor", "FFFFFF");
Startpunkten för all konfigurationssökning är en innehållsresurs, vanligtvis någonstans under /content
. Det kan vara en sida, en komponent på en sida, en resurs eller en DAM-mapp. Det här är det innehåll som vi letar efter rätt konfiguration för i det här sammanhanget.
Nu med Conf
-objekt kan vi hämta det specifika konfigurationsobjekt som vi är intresserade av. I detta fall är det dam/imageserver
, som är en samling inställningar som är relaterade till imageserver
. The getItem
anrop returnerar ValueMap
. Sedan läser vi en bgkcolor
string-egenskap och ange standardvärdet FFFFFF om egenskapen (eller hela config-objektet) inte finns.
Nu ska vi titta på motsvarande JCR-innehåll:
/content/dam/wknd
+ jcr:content
- cq:conf = "/conf/wknd"
+ image.png [dam:Asset]
/conf/wkns
+ settings
+ dam
+ imageserver [cq:Page]
+ jcr:content
- bgkcolor = "FF0000"
I det här exemplet antar vi en WKND-specifik DAM-mapp här och en motsvarande konfiguration. Från den mappen /content/dam/wknd
ser vi att det finns en strängegenskap med namnet cq:conf
som refererar till konfigurationen som ska användas för underträdet. Egenskapen ställs vanligtvis in på jcr:content
för en resursmapp eller -sida. Dessa conf
länkar är explicita, så det är enkelt att följa dem genom att bara titta på innehållet i CRXDE.
Hoppa inuti /conf
, följer vi referensen och ser att det finns en /conf/wknd
nod. Detta är en konfiguration. Observera att sökningen är helt genomskinlig för programkoden. Exempelkoden har aldrig någon dedikerad referens till den, den döljs bakom Conf
-objekt. Vilken konfiguration som tillämpas styrs helt av JCR-innehållet.
Vi ser att konfigurationen innehåller ett fast namn settings
nod som innehåller de faktiska objekten, inklusive dam/imageserver
vi behöver i vårt fall. Ett sådant objekt kan tolkas som ett inställningsdokument och representeras vanligtvis av en cq:Page
inkluderar jcr:content
som innehåller det faktiska innehållet.
Äntligen ser vi egendomen bgkcolor
som vår exempelkod behöver. The ValueMap
vi kommer tillbaka från getItem
baseras på sidans jcr:content
nod.
I det grundläggande exemplet ovan visades en enda konfiguration. Men det finns många fall där du vill ha olika konfigurationer, till exempel en global standardkonfiguration, en som skiljer sig åt för varje varumärke och kanske en specifik konfiguration för dina delprojekt.
Som stöd för detta har konfigurationssökningen i AEM arv- och reservmekanism i följande prioritetsordning:
/conf/<siteconfig>/<parentconfig>/<myconfig>
cq:conf
någonstans i /content
/conf/<siteconfig>/<parentconfig>
/conf/<siteconfig>
/conf/global
admin
roll/apps
/libs
Konfigurationer i AEM baseras på Sling Context-Aware Configurations. Sling-paketen innehåller ett tjänst-API som kan användas för att få kontextmedvetna konfigurationer. Kontextmedvetna konfigurationer är konfigurationer som är relaterade till en innehållsresurs eller ett resursträd som de var som beskrivs i föregående exempel.
Mer information om Context-Aware Configurations, exempel och hur du använder dem finns i se Sling-dokumentationen.
Det finns en ConfMgr webbkonsol på https://<host>:<port>/system/console/conf
, som kan visa konfigurationer för en viss sökväg/ett visst objekt.
Ange bara:
Klicka Lös för att se vilka konfigurationer som är lösta och få exempelkod som löser dessa konfigurationer.
Det finns en Kontextmedveten konfiguration webbkonsol på https://<host>:<port>/system/console/slingcaconfig
, som gör det möjligt att fråga efter kontextmedvetna konfigurationer i databasen och visa deras egenskaper.
Ange bara:
Klicka Lös för att hämta associerade kontextsökvägar och egenskaper för den valda konfigurationen.