2015-04-17 3 views
6

Ich habe einige zusätzliche Zugriffssteuerungslisten zu/home/groups und/home/users hinzugefügt, indem ich _rep_policy.xml-Dateien für jede Datei hinzugefügt habe, sie aber anscheinend nicht zur Bereitstellung bringen kann. Ich fügte hinzu, die folgenden Zeilen in mein Gewölbe filter.xmlWie man rep: policy-Dateien über Maven bereitstellen?

<filter root="/home/users/rep:policy" mode="replace"/> 
<filter root="/home/groups/rep:policy" mode="replace"/> 

Beide haben Inhalte wie folgt aus:

<?xml version="1.0" encoding="UTF-8"?> 
<jcr:root xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:rep="internal" 
    jcr:primaryType="rep:ACL"> 
    <allow 
     jcr:primaryType="rep:GrantACE" 
     rep:principalName="everyone" 
     rep:privileges="{Name}[jcr:read]"/> 
</jcr:root> 

Aber wenn ich maven laufen, kann ich alles um sie herum bekommen eingesetzt, aber nicht diese beiden sehen . Wenn ich versuche, das Paket direkt über den Paketmanager zu installieren, funktioniert es nur, wenn ich die Zugriffssteuerungsbehandlung auf "Ersetzen" setze. Ich weiß nicht, wie ich das in Maven konfigurieren soll.

Antwort

5

Die Paketeigenschaften werden im Konfigurationsabschnitt des Vault-Plugins in POM konfiguriert. ACL Import in dem Paket hinzufügen, die folgenden Konfigurationen auf die POM

<configuration> 
     <properties> 
      <acHandling>Overwrite</acHandling> 
     </properties> 
</configuration> 

Die Dokumentation für den Vault-Plugin zu ermöglichen ist bei http://docs.adobe.com/docs/en/cq/5-6-1/core/how_to/how_to_use_the_vlttool/vlt-mavenplugin.html

+0

Diese Antwort schien so klar, aber als ich es versuchte, hatte es überhaupt keine Wirkung. Ich habe ein Paket im Paket-Manager mit den richtigen Einstellungen eingerichtet und heruntergeladen, um die genauen Definitionen/.content.xml zu erhalten, die ich wollte. Es wurde dem Projekt hinzugefügt. Ich sehe es in target/vault-work und in das Paket zip kopiert. Aber die rep: policy wird immer noch nicht bereitgestellt und meine Konfigurationen werden nicht im Paketmanager angezeigt. – jiggy

+2

@jiggy, Entschuldigung, dass die Lösung nicht erwähnt wurde, wurde nicht getestet. Stellt sich heraus, dass alle Configs überschrieben werden. Der richtige Weg ist, sie in POM zu setzen. Habe meine Antwort so bearbeitet, dass sie dieselbe enthält. –

3

so diese richtig einmal beantwortet wird und für alle ... aktualisieren Sie bauen pom Plugin "com.day.jcr.vault":

<plugin> 
    <groupId>com.day.jcr.vault</groupId> 
    <artifactId>content-package-maven-plugin</artifactId> 
    <version>0.0.24</version> 
    <extensions>true</extensions> 
    <configuration> 
     <failOnError>true</failOnError> 
     <username>${crx.username}</username> 
     <password>${crx.password}</password> 
     <properties> 
      <acHandling>merge_preserve</acHandling> 
     </properties> 
    </configuration> 
</plugin> 

acHandling Optionen: - ignorieren - überschreiben - fusionieren - merge_preserve - klar

Verwandte Themen