1

既存の Java-mybatis アプリケーションがあります。私はコンボボックスでjavafxシーンを作成しました.ComboxはObservableListの値のリストを示しています. ObservableList を返すように DAO クラスを変更しました。しかし、mybatis がリストを返すため、実行時例外がスローされます。
スレッド「メイン」org.apache.ibatis.reflection.ReflectionException での例外: 無効なタイプ () または値 () でインターフェース javafx.collections.ObservableList をインスタンス化する際にエラーが発生しました。原因: java.lang.NoSuchMethodException: javafx.collections.ObservableList.()

mybatis の結果マップを ObservableList に変換するコードを以下に示します。JavaFX Combobox に値が移入されます。

Gates mapper = session.getMapper(Gates.class);
List<GateVO> gateVOs = mapper.getGates();
ObservableList<String> gates = FXCollections.observableArrayList();
if (gateVOs != null && !gateVOs.isEmpty()) {
    for (GateVO gateVO : gateVOs) {
        gates.add(gateVO.getGateNo());
    }
}

javafx コントロールをバインドするために mybatis の結果を直接使用することはできませんか? 代替アプローチはありますか?

4

1 に答える 1

2

やってみました

ObservableList<GateVO> gates = FXCollections.observableArrayList(gateVOs);
于 2013-10-18T13:39:52.837 に答える