问题
我想在JS事件上重新呈现JSF页面的部分/元素。我可以很容易地附加一个
<a4j:ajax render="one two three" />到事件颁发者或使用
<a4j:jsFunction render="one two three" name="load" />但是这些方法只发出一个请求,并在服务器响应后呈现所有内容。我想要的是并行请求和异步呈现。
到目前为止我尝试过的
多ajax元素
我尝试使用具有不同呈现属性值的多个ajax元素,但通过这种方式获得X请求和响应,这些请求和响应都包含所有需要重新呈现的元素的数据:
<a4j:ajax render="one" />
<a4j:ajax render="two" />
<a4j:ajax render="three" />多jsFunction元素
使用多个jsFunction在单个调用和单独呈现的意义上工作,但是只有在最后一个请求被回答之后才发出请求,这更像是顺序加载(我使用浏览器开发工具进行了测量):
<a4j:jsFunction render="one" name="loadOne" />
<a4j:jsFunction render="two" name="loadTwo" />
<a4j:jsFunction render="three" name="loadThree" />最后一种方法看起来最有希望,因为函数是异步的(它们立即返回),但是请求似乎都在一个队列中,它们是按顺序处理的,而不是并行的。
发布于 2015-12-02 11:26:17
让我想起一个老问题..。
长话短说:这是不可能的,因为JSF是严格顺序的。句号。
https://stackoverflow.com/questions/28721114
复制相似问题