Velocity - Dropdown-Felder über Macro generieren

Mean

Aktives Mitglied
Hallo,

ich will per Velocity über ein Macro Dropdown-Felder erzeugen. Die Keys und Values für diese Dropdown-Felder sollen aus einer Properties-Datei kommen, die im Java-Code ausgelesen werden und dann in einem Makro in HTML-Tags eingebaut werden.

Was in dem Makro generiert wird ist dann

Code:
<option value="$value">$key</option>

Wie bekomme ich es denn bitte hin, diese automatisch zu erzeugen? Eine HashMap scheidet aus, da die Werte in der Reihenfolge, wie sie in der Properties aufgeführt sind (in etwa so key_value = Das ist der Text _ text, Value 1 _ value 1).

Ich weiß nun jedoch nicht, wie ich dieses Dropdown nun über eine foreach-Schleife bauen kann und in welcher Form ich diese an Velocity übergebe.

Ein erster Ansatz von mir war:

Code:
#foreach($blubb in $bla.split(",")
<!-- Hier hätte ich dann innerhalb der foreach-Schleife ja immer die key-value-Paare, also im 1.Durchlauf z.B. Das ist der Text _ text-->
  #foreach($abc in $blubb.split("_")
    <!-- Wenn ich hier jetzt die Ausgabe mache habe ich jedoch für Das ist der Text und text jeweils einen Schleifendurchlauf?! Oder gibt es die Möglichkeit irgendwie per $abc[0] und $abc[1] darauf zuzugreifen?-->
  #end
#end

Vielen Dank und viele Grüße,

Felix
 

Ebenius

Top Contributor
Vielleicht bekommst Du eine Antwort, wenn das Thema nicht bei AWT/Swing/SWT steht? Hab's mal nach Web Tier verschoben; das sollte doch (besser) stimmen, oder?

Ebenius
 

Mean

Aktives Mitglied
Hallo ihr beiden,

danke für eure Antworten!

Vielleicht bekommst Du eine Antwort, wenn das Thema nicht bei AWT/Swing/SWT steht? Hab's mal nach Web Tier verschoben; das sollte doch (besser) stimmen, oder?

Ich habe AWT/Swing/SWT als "Beispiele" gesehen und mich dann an dem Untertitel
Fragen zur Programmierung von Benutzer-Oberflächen (GUI)
orientiert. Aber danke fürs Verschieben!

Lemieux: Danke, das werde ich direkt mal probieren - die LinkedHashMap habe ich mir zwar schon angeschaut, hatte Probleme beim Iterieren innerhalb von Velocity. Das werde ich dann noch mal probieren.

Vielen Dank nochmals und viele Grüße,

Felix
 

Ähnliche Java Themen

Neue Themen


Oben