2016-04-07 17 views
1

Wir sind mit dem libProperty Konfiguration AEM Day lib

"Day Commons-Bibliothek - HTTP Client 3.1 Bündelung (com.day.commons.osgi.wrapper.commons-Httpclient)"

in unserem AEM 6.0 System. Wir möchten die Eigenschaft http.protocol.cookie-policy dieser Lib auf einen anderen Wert ändern. (Es ist die Cookie-Richtlinie https://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/cookie/CookiePolicy.html).

Was ist der beste Weg, das zu tun?

Das Objekt nicht sichtbar in der OSGi-Konsole ist, gibt es nur andere Werte dieses lib konfigurierbar (wie HTTP Proxy User etc.)

-https://docs.adobe.com/docs/en/aem/6-0/deploy/configuring/configuring-osgi.html Nach konnte man eine Konfiguration in

erstellen/apps/system/config

Aber wie können wir sicherstellen, dass die Bibliothek genau diese Konfiguration neu lädt, wenn wir das neu starten Paket/Dienst in der OSGi-Konsole?

Ist der Eintrag in JCR erfordern wie die

org.apache.commons.httpclient.cookie.CookiePolicy 

und dem Wert in den jcr

Klasse genannt werden: Inhalt vom Typ String sein und hat die andere Cookie-Politik enthalten, z.B. BROWSER_COMPATIBILITY, richtig?

Wie können wir später feststellen, ob der Wert geladen wurde? Das Problem ist: Die Lib ist nicht unser Code, wir können nicht einfach eine Protokollzeile hinzufügen.

Antwort

1

Das httpclient osgi-Bundle lädt nur ausgewählte Eigenschaften, die in metatype.xml definiert sind (Dies ist ein Beispiel. Nicht die tatsächliche Konfiguration, die in Tag common httpclient verwendet wird). Daher wird Ihre Konfiguration nicht verwendet.

Sie sollten setCookiePolicy Methode von org.apache.commons.httpclient.params.HttpMethodParams verwenden können.