我们很快开始开发新的Web应用程序,目前正在评估/提出要使用的技术堆栈.
对于视图层,我们必须在Primefaces,Icefaces 2(因为我们绝对需要JSF2)和Richfaces之间进行选择.我们的基本要求是外观和感觉,简单性和易开发性,可扩展性和性能(最重要).
利用哪种观点技术/框架最为可行.我们将不胜感激任何投入/专家意见.此外,如果有任何其他推荐的框架,请告诉我们.
感谢致敬
我正在使用icefaces选择菜单从用户列表中选择一个用户,我想为每个用户重复selectItem这里是我尝试的:
<ice:selectOneMenu id="users">
<ui:repeat value="#{user.getUserList()}" var="user">
<f:selectItem itemLabel="#{user.name}" itemValue="#{user.id}"/>
</ui:repeat>
</ice:selectOneMenu>
Run Code Online (Sandbox Code Playgroud)
的UserBean:
@Component("user")
@Scope("view")
Public class UserBean{
Public List<User> getUserList() throws Exception {
return userService.getAllUsers();
}
}
Run Code Online (Sandbox Code Playgroud)
注意: UserBean不包含属性id,它们存在于用户实体中的名称.请指教,谢谢.
我<h:selectBooleanCheckbox>在DataTable的facet头中使用a.该<h:column>DataTable的所有行内容都是<h:selectBooleanCheckbox>.行按照我想要的方式完美选择.以下是我使用的代码:
<h:form>
<h:dataTable
value="#{employeeService.employeeList }"
var="empl"
binding="#{employeeService.dataTablebinding }">
......
......
......
<h:column>
<f:facet name="header">
<h:selectBooleanCheckbox id="chkBoxAll" value="#{employeeService.checkedHdr }" valueChangeListener="#{employeeService.checkAll }" onclick="submit()"></h:selectBooleanCheckbox>
</f:facet>
<h:selectBooleanCheckbox id="tableChkBox" value="#{empl.checked }" valueChangeListener="#{employeeService.getCheckChanged }" onclick="submit()"></h:selectBooleanCheckbox>
</h:column>
</h:dataTable>
Run Code Online (Sandbox Code Playgroud)
这是以下代码ValueChangeListener:
public void checkAll(ValueChangeEvent event){
if(isInvokeApplicationPhase(event)){
Iterator<Employee> empl = employeeList.iterator();
while(empl.hasNext()){
Employee emp = empl.next();
emp.setChecked(checkedHdr);
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是isInvokeApplicationPhase我为实现此代码而添加的实用程序(参考BalusC此链接中建议的解决方案:JSF 1.2:valueChangeListener事件未返回新选择的值):
public boolean isInvokeApplicationPhase(FacesEvent event){
if(event.getPhaseId() != PhaseId.INVOKE_APPLICATION){
event.setPhaseId(PhaseId.INVOKE_APPLICATION);
event.queue();
return false;
}
return true; …Run Code Online (Sandbox Code Playgroud) icefaces-1.8 ×3
icefaces ×2
facelets ×1
java ×1
jsf ×1
jsf-1.2 ×1
jsf-2 ×1
primefaces ×1
richfaces ×1