h:form 应该对不同的 URL 执行 GET 请求
h:form should do GET request to different URL
我有一个 JSF 应用程序,其 URL 如
/customers/12345/invoices/
/customers/56789/addresses
在每一页的顶部是一个数字选择表单,它应该导致 GET 重定向到与上面类似的 url,只是用用户选择的数字替换数字。 GET 请求应该 而不是 包含 javax.faces.ViewState。它的行为应该像在常规标记内一样,或者好像我想 post 到一个完全不同的服务器。
执行此操作的 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 links/buttons 而不是 POST links/buttons.
<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 摆脱 underline/color 并使它们成为内联块元素,这样看起来更好。
我有一个 JSF 应用程序,其 URL 如
/customers/12345/invoices/
/customers/56789/addresses
在每一页的顶部是一个数字选择表单,它应该导致 GET 重定向到与上面类似的 url,只是用用户选择的数字替换数字。 GET 请求应该 而不是 包含 javax.faces.ViewState。它的行为应该像在常规标记内一样,或者好像我想 post 到一个完全不同的服务器。
执行此操作的 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 links/buttons 而不是 POST links/buttons.
<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 摆脱 underline/color 并使它们成为内联块元素,这样看起来更好。