我正在尝试在所有xPage中使用OOP方法。不出所料,我面临几个问题,但这样做也有很多好处。
我的问题与视图(重复控件)有关。我正在为重复控件加载一个List<myCustomBean>
,其中包含所有myCustomBean
类型的可用对象,并在Bootstrap表行中以所需的方式显示每个myCustomBean
。一切正常。
我可以使用自己的方法对带有URL参数sortedBy=MySortColumn
的列表进行排序。 -问题1解决了。
在重复控制中如何处理分类?因此,我可以轻松地按Cotegory对咖啡豆进行排序,但是我将如何显示它,包括。可扩展的和可折叠的曲折?也许有我可以使用的自定义控件?还是扩展库的控件?
还是我必须自己重新构建所有内容?
任何建议深表感谢。
最佳答案
数据视图控件可能是最好的。像“视图面板”或“数据视图”一样,它是“重复控件”的扩展。但是它比“视图面板”具有更大的灵活性,并且比“数据视图”允许更多的可配置布局。它具有categoryColumn
属性,但这是为绑定到dominoView数据源而设计的。但是也可以使用categoryRow
构面。
本质上,使用dominoView
组件已经在使用OOP编程。您的重复使用List<myCustomBean>
,dominoView返回List<DominoViewEntry>
。 dominoView
上的属性用于查询数据库中的基础View
对象,并仅从ViewEntry
或ViewNavigator
返回那些ViewEntryCollection
对象。它根据使用ViewEntry
的任何内容的DominoViewEntry
属性将rows
包装为DominoView
对象,以供选择。
作为为Vaadin构建该功能子集以供使用的人(请参阅我的XPages至Web App博客系列http://www.intec.co.uk/tag/xpages-to-web-app-tutorial/),在XPages中,我通常使用dominoView
对象,除非要提取一小部分ViewEntries / Documents。当我使用ViewEntryCollection / DocumentCollection时,我很少包装,而是让XPages优化检索而不是自己重新开发该优化。
关于java - Xpages包含bean的“ View ”:分类,排序,搜索,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48185059/