Vaadin 中的 FilterTable 和 SQLcontainer

FilterTable and SQLcontainer in Vaadin

我在 Vaadin 中创建了简单的 FilterTable

    private static final String COL1_PROP = "date";
    private static final String COL2_PROP = "name";
    private static final String COL3_PROP = "status"; 

    //............

    final FilterTable fooTable= new FilterTable();
    fooTable.setImmediate(true);
    fooTable.setSelectable(true);
    fooTable.setWidth("100.0%");
    fooTable.setHeight("100.0%");

    fooTable.setColumnHeader(COL1_PROP, "Date");
    fooTable.setColumnHeader(COL2_PROP, "Name");
    fooTable.setColumnHeader(COL3_PROP, "Status");

    fooTable.setFilterBarVisible(true); //show filters
    fooTable.setFilterFieldVisible(COL1_PROP, false); //hide col1_prop column filter

    fooTable.setColumnCollapsingAllowed(true); // allow collapsing
    fooTable.setColumnCollapsed(COL3_PROP, true); // collapse col3_prop column

    fooTable.setContainerDataSource(container);

    fooTable.setColumnExpandRatio(COL1_PROP, 1.0f);
    fooTable.setColumnExpandRatio(COL2_PROP, 2.0f);

我的容器是 SQLConterner,查询如下:

SELECT date, name, status FROM foo

我得到的数据没有问题,但是,我想完全隐藏 Status 列。更重要的是我想隐藏一个 Date 列过滤器。正如我想的那样,带有注释的行会做这些事情。然而他们不是。我在 table 中获得了完整的 3 列,并且所有这些列都可以使用过滤器。

怎么了?

将注释行移到 set Container DataSource 类下方。