Die Methoden von TasksSession erwarten Task-Objekte oder geben solche zurück, welche wiederum enum-Werte (Priority) enthalten. Damit DWR diese übersetzen kann, muss man zuerst die Konvertierung zulassen und dann angeben, wie die Werte konvertiert werden sollen. In der Datei dwr.xml kann man innerhalb des Abschnitts
Diese haben zwei Attribute: converter und match Das Attribut converter gibt an, welche Konvertierungsmethode verwendet werden soll. Die Angabe „bean“ bedeutet, dass der allgemeine Java-Bean-Konverter zum Einsatz kommt, die Angabe „enum“ verweist auf einen speziellen enum-Konverter. Das Attribut match gibt den Klassennamen an, der bei der Konvertierung übereinstimmen muss. DWR bringt standardmäßig Konverter mit, die für primitive Datentypen registriert sind (int, boolean und so weiter), für ihre klassenbasierten Versionen (Integer, Boolean und so fort), Strings, Daten, Arrays aller Vorgenannten und schließlich DOM-Objekte. Man muss nur Konverter für Klassen angeben, die nicht in dieser Liste enthalten sind.
Die SortOrder-Klasse definierte eine inner enum (TaskField). Daher muss man einen enum-Konverter für das TaskField hinzufügen, obwohl für SortOrder ein bean-Konverter angegeben ist. Man beachte das $ im match-Wert.
Um diese Zugriffsweise nutzen zu können, muss man in der HTML-Seite (dwrfrontend.html) nur Folgendes festlegen:
Um die Konverter muss man sich nicht kümmern, diese werden automatisch aufgerufen.
Die HTML-Seite enthält eine Tabelle und ein Formular. Die Tabelle selber enthält keine Zeilen und das Formular hat keinen submit-Button. Wenn die Seite geladen wird, sorgt die Funktion init dafür, dass das Formular gelöscht wird, und zwar mit einer der Utility-Funktionen von DWR, setValues:
DWRUtil.setValues nimmt das übergebene assoziative Array, sucht für jedes Schlüssel-Wert-Paar das HTML-Element mit derselben ID wie der Schlüssel und setzt dessen Inhalt auf den übergebenen Wert. Auf diese Weise lassen sich Werte leicht auf einen Rutsch setzen. Das <form>-Element in der Seite sieht so aus: