Ich habe in meinem Projekt eine Auswahlliste implementiert.Quellliste in Primefaces-Auswahlliste behalten
Ich habe versucht, die Logik dieser Ansicht zu ändern meine Handlungen zu passen. Ich möchte die SourceList so lassen, wie sie ist, und nur die Zielliste ändern, wenn das angegebene itemScope nicht bereits in der Zielliste ist.
Mein Ansatz:
public void onTransfer(TransferEvent event) {
// wenn wir eine Sprache aktivieren möchten, sollte die sprache nicht
// aus der source entfernt werden
if (event.isAdd()) {
List<String> itemsInScope = (List<String>) event.getItems();
itemsInScope.addAll(languages.getSource());
languages.setSource(itemsInScope);
for(String s : languages.getSource())
System.out.println(s);
}
settingsObject.setActiveLanguages(languages.getTarget());
settingsObject.setSupportedLanguages(languages.getSource());
TranslationConfig conf1 = new TranslationConfigManager().getSettings();
conf1.setActiveLanguages(languages.getTarget());
conf1.setSupportedLanguages(languages.getSource());
new TranslationConfigManager().updateSetting(conf1);
}
Dies funktioniert logisch mit dem Duallist, weil es die richtige gefüllt Liste zurückgibt, aber die irgendwie eine Abhilfe und schmutzig. Das Problem hier ist, es entfernt immer noch das Element in der Ansicht.
Ist meine Vorgehensweise überhaupt möglich?
dieses solution.Same Problem versucht. Die Logik in den Objets ist richtig, aber die UI-Komponente (Picklist) zeigt immer noch falsche Inhalte an. – Offset
Aktualisieren Sie die Auswahlliste in der XHTML? Da Sie den Wert der Auswahlliste ändern, müssen Sie die Auswahlliste verarbeiten und aktualisieren, damit dies funktioniert –