使用JSF将具有寻呼机的视图添加到Xpage

时间:2012-08-09 14:32:07

标签: xpages

我尝试在JSf中构建一个Java类,将一个带有Pager的视图添加到XPage中 我在这个简单的例子中使用UiDataview但我的问题是,添加到结果中的Pager女巫从未在我的Xpage中显示。谁知道我必须做什么?

    public class MainLibcontrol extends UIComponentBase implements FacesComponent {

        private static final String RENDERER_TYPE = "de.my.MainLibcontrol";
        private static final String COMPONENT_FAMILY = "de.my";

        public MainLibcontrol() {
            setRendererType(RENDERER_TYPE);
        }

        @Override
        public String getFamily() {
            return COMPONENT_FAMILY;
        }

        @SuppressWarnings("unchecked")
        public void initBeforeContents(FacesContext arg0) throws FacesException {
            try {
            UIDataView viewtable = new UIDataView();
            viewtable.setColumnTitles(true);
            CategoryColumn categoryColumn = new CategoryColumn();
            categoryColumn.setComponent(viewtable);
            categoryColumn.setColumnName("form");
            categoryColumn.setColumnTitle("form");
            categoryColumn.setContentType("text");
            viewtable.addCategoryColumn(categoryColumn);

            DominoViewData data = new DominoViewData();
            data.setComponent(viewtable);
            data.setViewName("142342");
            data.setVar("view2");
            viewtable.setData(data);
            viewtable.setId("dataView1");
            viewtable.setRows(3);
            SummaryColumn summaryColumn = new SummaryColumn();
            summaryColumn.setComponent(viewtable);
            summaryColumn.setColumnName("5");
            summaryColumn.setColumnTitle("5");
            viewtable.setSummaryColumn(summaryColumn);


            XspPager pager = new XspPager();
            pager.setPartialRefresh(true);
            pager.setLayout("Previous Group Next");
            pager.setId("pager1");

            viewtable.getChildren().add(pager);

            this.getChildren().add(viewtable);
            } catch (Exception e) {
                e.printStackTrace();

            }
        }
        public void buildContents(FacesContext arg0, FacesComponentBuilder arg1) throws FacesException {
                .....
        }

        public void initAfterContents(FacesContext arg0) throws FacesException {
            ....
        }

    }

1 个答案:

答案 0 :(得分:1)

我没有试过这个,但我想你想把它作为viewTable的一个方面而不是孩子。

所以你的行应该是

viewtable.getFacets().put("headerPager", pager);