【发布时间】:2015-05-13 11:25:15
【问题描述】:
我尝试了解 JSF UIData () 如何在 JSF 中以编程方式工作。我有以下代码:
UIInput input = new UIInput();
UIInput input2 = new UIInput();
UIOutput header = new UIOutput();
header.setValue("Header");
UIColumn column = new UIColumn();
column.setHeader(header);
column.getChildren().add(input);
column.getChildren().add(input2);
UIData table = new UIData();
table.getChildren().add(column);
这段代码渲染 html 如下:
<table>
<thead>
<tr>
<th scope="col">Header</th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
</tr>
</tbody>
</table>
我的两个输入在哪里?我希望是这样的:
.....
<tbody>
<tr>
<td>
<input type="text" />
</td>
</tr>
<tr>
<td>
<input type="text" />
</td>
</tr>
</tbody>
......
【问题讨论】:
-
我也尝试将 UIComponents (UIData,UIInput, UIColumn) 切换到 HtmlComponenets (HtmlDataTable, HtmlInputText, HtmlColumn) 但结果仍然相同。空行。
-
在使用 XHTML (XML) 而不是 Java 声明/创建组件时,您会遇到完全相同的问题。 nothing 在声明/创建组件方面只有在 Java 中而不在 XHTML 中才有可能。 XHTML 的主要优点是代码可读性更强,更易于维护。只要我的 2 美分,如果你真的要继续朝这个方向发展,你可以三思而后行。
标签: jsf jsf-2 uicomponents