Redirect JSF2自动更新命令按钮';s使用inputText'重定向页面;s值
我在JSF页面中有一个inputText和一个commandButton。用户输入一些内容,然后在结果页面中被重定向,该页面还具有具有相同功能的inputText和commandButton。commandButton应该在单击时执行一些操作,并重定向到REST url(结果页面),该url是通过将inputText值附加到基本url中构建的。我尝试了很多东西,但在第二页我没有成功。到目前为止,我尝试的是:Redirect JSF2自动更新命令按钮';s使用inputText'重定向页面;s值,redirect,button,jsf-2,input,Redirect,Button,Jsf 2,Input,我在JSF页面中有一个inputText和一个commandButton。用户输入一些内容,然后在结果页面中被重定向,该页面还具有具有相同功能的inputText和commandButton。commandButton应该在单击时执行一些操作,并重定向到REST url(结果页面),该url是通过将inputText值附加到基本url中构建的。我尝试了很多东西,但在第二页我没有成功。到目前为止,我尝试的是: 在commandButton的操作中,我调用我的方法,然后返回重定向的URL,因为我的b
属性中使用了过于通用的客户端标识符,如@form
。只需将其替换为不包括按钮的更具体的内容即可
同样,对于AJAX,这不起作用,因为每次用户键入内容时都会调用该方法 只需检查它是否不是ajax请求
if (!FacesContext.getCurrentInstance().getPartialViewContext().isAjaxRequest()) {
// Not an ajax request.
}
但我认为我必须呈现按钮,因为否则操作重定向URL将不会附加带有inputText的URL,因为这将在呈现页面之前计算一次。到目前为止,我只能渲染按钮。你的第二个建议似乎奏效了。我将它与preRenderView相结合,似乎在刷新页面时调用该方法,但在ajax重新呈现按钮以放入新值时不会调用该方法。这很奇怪,因为这意味着ajax调用会重新呈现视图。为什么ajax调用不应该向JSF发送任何HTTP请求?为什么ajax调用不应该重新呈现视图?ajax调用还应该如何获得响应?我的意思是,我猜只有指定的元素被ajax重新呈现,这不会影响preRenderView中的侦听器,因为我猜只有在重新加载整个页面时才会激活它。