我的数据库中有大约10个表 . Build CRUD对于这些很容易,即 . 在Netbeans中进行逆向工程,并且使用Netbeans 8,页面看起来很棒,这要归功于primefaces .

所以现在每个实体有4页;列表,创建,编辑和查看 . 创建和编辑类似,只是它们绑定到新的相应现有实体 . 视图与编辑类似,只是它是只读的 . 当然,可用按钮也会改变,并且可能存在其他微小差异 .

我想要的是将每个实体保持为2个组件;列表为1,实例为1 . 后者应该有3种口味; editmode,createmode和viewmode . 这些组件应该可以包含在其他页面中,最好是作为对话框和“原始”导入 .

任何人都知道这是否可行?我是否需要创建自己的渲染集,即ie . 渲染一个inputText-component和一个selectOneMenu作为outputText?作为一个例子,我第一次尝试使用inputText只是写了disabled =“true”,这使得inputtext不可编辑 . 它变得太灰了,但我想通过压倒这种风格可以解决这个问题 . 但是最好在viewmode中渲染为真正的outputText . 也许巧妙地使用css可以完成工作而不是渲染 .

也许最简单的方法是将复合组件的viewmode存储在componenttree中 . 这可能吗?我想任何组件都必须在渲染阶段在树中查找,以查看它应该如何渲染 .

对于按钮,我可以只使用渲染属性 .

有可能走这条路,还是有人已经为此制定了框架?或者它将JSF拉得太远了?