尝试显示表视图(数据库(HSQLDB)中的FXML

我正在尝试显示我创建的数据库中的Table视图。通过检查for循环进行了多少次,我可以看到表中的行。但是,当我设置cellValueFactory时,会抛出以下错误吗?

六月。 2020年4月4日下午8:23:13 javafx.scene.control.cell.PropertyValueFactory getcellDataReflectively 警告:无法在提供的类类型为class model的PropertyValueFactory中检索属性'responder_id':javafx.scene.control.cell.PropertyValueFactory@992d26f java.lang.IllegalStateException:无法从不可读的属性responseer_id中读取 在javafx.base / com.sun.javafx.property.PropertyReference.get(PropertyReference.java:170) 在javafx.controls / javafx.scene.control.cell.PropertyValueFactory.getcellDataReflectively(PropertyValueFactory.java:184) 在javafx.controls / javafx.scene.control.cell.PropertyValueFactory.call(PropertyValueFactory.java:154) 在javafx.controls / javafx.scene.control.cell.PropertyValueFactory.call(PropertyValueFactory.java:133) 在javafx.controls / javafx.scene.control.TableColumn.getcellObservableValue(TableColumn.java:593) 在javafx.controls / javafx.scene.control.TableColumn.getcellObservableValue(TableColumn.java:578) 在javafx.controls / javafx.scene.control.TableCell.updateItem(TableCell.java:646) 在javafx.controls / javafx.scene.control.TableCell.indexChanged(TableCell.java:469) 在javafx.controls / javafx.scene.control.IndexedCell.updateIndex(IndexedCell.java:120) 在javafx.controls / javafx.scene.control.skin.TableRowSkinBase.updateCells(TableRowSkinBase.java:539) 在javafx.controls / javafx.scene.control.skin.TableRowSkinBase(TableRowSkinBase.java:159) 在javafx.controls / javafx.scene.control.skin.TableRowSkin。(TableRowSkin.java:89) 在javafx.controls / javafx.scene.control.TableRow.createDefaultSkin(TableRow.java:213) 在javafx.controls / javafx.scene.control.Control.doProcessCSS(Control.java:897) 在javafx.controls / javafx.scene.control.Control.access $ 000(Control.java:83) 在javafx.controls / javafx.scene.control.Control $ 1.doProcessCSS(Control.java:89) 在javafx.controls / com.sun.javafx.scene.control.ControlHelper.processCSSImpl(ControlHelper.java:67) 在javafx.graphics/com.sun.javafx.scene.NodeHelper.processCSS(NodeHelper.java:147) 在javafx.graphics/javafx.scene.Node.processCSS(Node.java:9515) 在javafx.graphics/javafx.scene.Node.applyCss(Node.java:9602) 在javafx.controls / javafx.scene.control.skin.VirtualFlow.setCellIndex(VirtualFlow.java:1715) 在javafx.controls / javafx.scene.control.skin.VirtualFlow.getcell(VirtualFlow.java:1692) 在javafx.controls / javafx.scene.control.skin.VirtualFlow.getcellLength(VirtualFlow.java:1801) 在javafx.controls / javafx.scene.control.skin.VirtualFlow.computeViewportOffset(VirtualFlow.java:2638) 在javafx.controls / javafx.scene.control.skin.VirtualFlow.layoutChildren(VirtualFlow.java:1245) 在javafx.graphics/javafx.scene.Parent.layout(Parent.java:1211) 在javafx.graphics/javafx.scene.Parent.layout(Parent.java:1218) 在javafx.graphics/javafx.scene.Parent.layout(Parent.java:1218) 在javafx.graphics/javafx.scene.Scene.doLayoutPass(Scene.java:590) 在javafx.graphics/javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2507) 在javafx.graphics/com.sun.javafx.tk.Toolkit.lambda$runPulse$2(Toolkit.java:410) 在java.base / java.security.accessController.doPrivileged(本机方法) 在javafx.graphics/com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:409) 在javafx.graphics/com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:436) 在javafx.graphics/com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:524) 在javafx.graphics/com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:504) 在javafx.graphics/com.sun.javafx.tk.quantum.QuantumToolkit.pulseFromqueue(QuantumToolkit.java:497) 在javafx.graphics/com.sun.javafx.tk.quantum.QuantumToolkit.lambda$runToolkit$11(QuantumToolkit.java:320) 在javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96) 在javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(本机方法) 在javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:175) 在java.base / java.lang.Thread.run(Thread.java:834)

My Code is this:
private void getallReplyDetails() throws SQLException,ClassnotFoundException
    {

        DBstore dbstore = new DBstore();
        ObservableList<Reply> replyList = FXCollections.observableArrayList();



        for(int i=0;i < dbstore.selectAllReplies().size();i++)
        {
            replyList.add(dbstore.selectAllReplies().get(i)); //this is where I m reading the datafrom DB
        }
            post_ID.setCellValueFactory(new PropertyValueFactory("post_ID"));
            value.setCellValueFactory(new PropertyValueFactory("value"));
            responder_id.setCellValueFactory(new PropertyValueFactory("responder_id"));

        tableView.setItems(replyList);

    }

My Reply class:
package model;

import java.util.ArrayList;

@SuppressWarnings("unused")
public class Reply
{
    private String post_ID;
    private double value;
    private String responder_id;

    public Reply(String post_ID,double value,String responder_id)
    {
        this.post_ID = post_ID;
        this.value = value;
        this.responder_id = responder_id;
    }



    public String getpost_ID()
    {
        return post_ID;
    }

    public void setpost_ID(String post_ID)
    {
        this.post_ID = post_ID;
    }

    public double getvalue()
    {
        return value;
    }

    public void setvalue(double value)
    {
        this.value = value;
    }

    public String getresponder_id()
    {
        return responder_id;
    }

    public void setresponder_id(String responder_id)
    {
        this.responder_id = responder_id;
    }
}


Anyone please help me?
iCMS 回答:尝试显示表视图(数据库(HSQLDB)中的FXML

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2205486.html

大家都在问