次のようなオブジェクトがあります
public class Table {
private String id;
private String name;
private List<Field> fieldsList;
}
public class Field {
private List<Column> columnList;
}
public class Column{
String id;
}
したがって、ここで私のワークフローは、複数のフィールドで構成されるテーブルであり、フィールドには複数の列があります。そのため、webUI では、名前とフィールド ドロップダウンを行としてテーブルを表示する必要があります。ユーザーがフィールドを選択すると、選択したフィールドを動的に取得し、選択したフィールドに属する列をレンダリングする必要があります。ここでは、選択したフィールドを Web UI から取得する方法を説明します。AjaxFormComponentUpdatingBehavior("onchange") で試しました。しかし、私はそのドロップダウンのすべてのフィールドを取得しています。
私のドロップダウンの選択は次のとおりです。
IChoiceRenderer choiceRenderer = new ChoiceRenderer("Name", "id");
DropDownChoice dropDownChoice = new DropDownChoice("ddc");
dropDownChoice.setChoiceRenderer(choiceRenderer);
dropDownChoice.setChoices(table.getFieldsList());
dropDownChoice.setModel(new CompoundPropertyModel(new Field()));
dropDownChoice.add(new AjaxFormComponentUpdatingBehavior("onchange") {
@Override
protected void onUpdate(AjaxRequestTarget target) {
//Following is returning all the List of Fields.
Object defaultModelObject = getModelObject();
}
});
そのようなシナリオを処理する方法。助けてください...