- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Alle Variablenamen von Eingabefeldern in einem Absatz (Section) ermitteln
Hallo,
um Seiten mit speziellen Werten fรผr die Suche zu indexieren (รผber die PushApi) hole ich mir von jeder Seite einen bestimmten "Body"
Body pageBody = pg.getBodyByName("content");
und davon alle Absรคtze
listBodyChilds = pageBody.getChildren()
Beim iterieren รผber die Absรคtze erhalte ich eine Section, wie erwartet und gewรผnscht.
Bisher habe ich wie folgt weitergearbeitet
Data dataSect = sectionChild.getData();
List listVarNam = dataSect.getVariableNames()
Somit habe ich alle Variablenamen des Absatzes und darรผber die Felder mit den "values" erhalten. Somit habe ich denn den Eintrag fรผr die Suche aufgebaut. (z.B. alle Textfelder als ein Feld fรผr die Suche zusammengeschrieben)
Nun habe ich auf FS4.2.452 umgestellt und getData() ist deprecated.
Mit
sectionChild.getFormData()
bekomme ich die FormData, wo es kein getVariableNames() mehr gibt.
Ich habe nun folgende MMรถglichkeit gefunden, aber "GomText" steht nicht in der API (somit wahrscheinlich nicht รถffentlich und soll sicher nicht unbedingt verwendet werden; die Ermittlung des Namen in der whileschleife ist nur exempalrisch und nicht vollstรคngigumgesetzt)
Iterable listVarNam1 = dataSect1.getForm().forms();
Iterator itListVarNam = listVarNam1.iterator();
while(itListVarNam.hasNext()) {
try{
GomText gt = (GomText) itListVarNam.next();
String feldName = gt.getName();
} catch (Exception E) {}
}
Muss ich nun immer die Variablenamen wissen oder gibt es eine andere Mรถglichkeit (ausser der o.g. falls sie verwendet werden sollte) an alle Variablenamen zu kommen?
Grรผรe aus Dresden
- Labels:
-
Developers
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
so in etwa sollte es funktionieren.
final FormData formData = ....getFormData();
final List<String> strings = formData.getForm().appendEditorNames(null);
for (final String name: strings) {
final FormField<?> formField = formData.get(language, name);
final Object value = formField.get(); // dieses ist dann der Feldwert
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
so in etwa sollte es funktionieren.
final FormData formData = ....getFormData();
final List<String> strings = formData.getForm().appendEditorNames(null);
for (final String name: strings) {
final FormField<?> formField = formData.get(language, name);
final Object value = formField.get(); // dieses ist dann der Feldwert
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Wenn ich aber vorher mittels:
for (String key : data.getVariableNames()) { {
DataValue dataValue = data.get(key);
EditorValue<?> editor = dataValue.getEditor();
for(Language lang : allLanguages) {
Object value = editor .get(language);
...
}
}
die Daten bearbeitet habe, dann muss ich jetzt die Sprach-Iteration eine Ebene hรถher setzen!? richtig?:
for (Language lang : allLanguages) {
for (String key : formData.getForm().appendEditorNames(null)) {
FormField<?> formField = formData.get(language, key);
Object value = formField.get();
...
}
}

