Konfiguration AdvancedURLCreator - Umlautersetzung

Hallo zusammen,

für den AdvancedURLCreator gibt's bereits diverse Konfigurationsmöglichkeiten.

creatorSettings = new HashMap();

creatorSettings.put("useregistry","true"); 

creatorSettings.put("useLowercase","true"); 

creatorSettings.put("removedeleted","true");

creatorSettings.put("usewelcomefilenames","false");

creatorSettings.put("useIRIs","false");

context.setProperty("#urlCreatorSettings", creatorSettings);

Es wäre toll, wenn hier noch ein zusätzliches Setting übergeben werden kann, dass der AdvancedURLCreator Umlaute ersetzt.

Viele Grüße

Jörn

Tags (2)
12 Comments
fbachner
I'm new here

Hi Zusammen,

gibt es hier bereits eine Lösung? Genau die Anforderung haben wir gerade auch.

Gruß

Felix

jst
New Responder

Hallo Felix,

uns ist noch keine Lösung bekannt. Wir haben jetzt vorerst einen eigenen URLCreator implementiert.

Viele Grüße

Jörn

fbachner
I'm new here

Hallo Jörn,

dachte ich mir schon.

Wie könnte denn so eine Implementierung grob aussehen?

Im eigenen URLCreator müssen dann auch alle gewünschten Standard Advanced URL Parameter (z.B. useLowercase) mit abgebildet werden oder?

Vielen Dank schon einmal

Gruß

Felix

jst
New Responder

Hallo Felix,

im ODFS gibt's eine Referenz-Implementierung des URLCreators. Dieser deckt im Prinzip alle Funktionen des AdvancedURLCreators ab. Den kannst du leicht anpassen und um ein Replace erweitern.

Viele Grüße

Jörn

fbachner
I'm new here

Hallo Jörn,

so, bin endlich dazu gekommen.

Umlaute werden nun auch angepasst. Leider funktionieren die Standard Settings nicht mehr (z.B. "useLowercase").

In der Referenz-Implementierung des URLCreators kann ich diese auch nirgends finden außer den Parameter "usewelcomefilenames".

War das bei euch auch so? Was mich etwas wundert ist, dass die Beispiele in einem Ordner "FS_V4_mod" liegen. Gibt es evtl. neue Referenz-Implementierungen oder müssen tatsächlich die Parameter neu definiert und implementiert werden?

Gruß

Felix

jst
New Responder

Hallo Felix, ich habe gerade noch einmal nachgeschaut. Du hast recht. Lowercase war in der Referenzimplementierung leider nicht enthalten. Wir haben das selbst ergänzt. Viele Grüße Jörn

Peter_Jodeleit
Crownpeak employee
Crownpeak employee

Ich denke nicht, das wir das im Standard ergänzen werden, dafür gibt es zu viele unterschiedliche (teils auch divergente) Anforderungen.

Würde es weiterhelfen, wenn der Code der Referenz-Implementierung aktualisiert wird?

Eine andere Alternative wäre es, AdvancedURLCreator in die API zu heben - damit kann man in einer eigenen Implementierung an diese delegieren um das Ergebnis des weitergeleiteten Calls dann noch mal geeignet zu modifizieren (also konkret z.B. die Umlaut-Ersetzung durchzuführen).

Viele Grüße,
Peter

jst
New Responder

Hallo Peter,

persönlich gefällt mir die alternative, dass der AdvancedURLCreator in die API gehoben wird. So könnte man sich quasi an diesen "andocken" und müsste nicht den AdvancedURLCreator noch einmal mit Hilfe der Referenz-Implementierung "neu implementieren".

Viele Grüße

Jörn

sbrandt68
Returning Observer

Uns würde es ebenfalls sehr helfen, wenn man den "AdvancedURLCreator" in die API geben würde.

benjaminfrenz
Occasional Observer

Hallo Peter,

ich kämpfe mich auch gerade durch die Referenzimplementierung und hätte auch großes Interesse an einer aktuellen Version.

Habe den Verdacht, dass sich da etwas bzgl. der Welcome Filenames geändert hat.

Optionen wie useIRIs, useRegistry etc. werden anscheinend an anderer Stelle behandelt, useLowercase fehlt komplett.

Bzgl. der Umlaute wäre es schon schön, könnte man den URL Creator mit einer Liste füttern, in der zu ersetzende Zeichen enthalten sind:

Ä=Ae|ä=ae|Ö=Oe|ö=oe|Ü=Ue|ü=ue|ß=ss|(|)|[|]|{|} die dann mit .split("|") und anschließend mit .split("=") verarbeitet werden.

Die Einträge ohne "=" werden z.B. komplett entfernt.

Das würde vielen wohl schon sehr weiterhelfen.

Viele Grüße

Benjamin