我有一个url为
的JSF应用程序/customers/12345/invoices/
/customers/56789/addresses
在每个页面的顶部是一个数字选择表单,应该导致GET重定向到一个类似于上面的url,只是用用户选择的数字替换。GET请求应该不应该包含javax.faces.ViewState。它应该表现得像在一个普通的标签内,或者好像我想要发布到一个完全不同的服务器。
JSF的样式是什么?
我的表单看起来像这样:
<p:selectOneMenu id="nr" onchange="submit()" value="#{menuBacking.selectedNumber}">
<f:selectItems value="${menuBacking.allNumbers}" var="number" itemLabel="${number.label}" itemValue="${number.value}" />
</p:selectOneMenu>
言归正传,只需使用普通的HTML <form>
,或者使用GET链接/按钮而不是POST链接/按钮。
<p:selectOneMenu>
支持自定义内容。在那里创建GET链接。
<p:selectOneMenu layout="custom" var="number">
<f:selectItems value="#{menuBacking.allNumbers}" />
<p:column>
<a href="/customers/#{number.value}/#{number.label}">#{number.label}</a>
</p:column>
</p:selectOneMenu>
如果需要的话,使用CSS去掉下划线/color,使它们成为内联块元素,这样看起来更好。