Java JSF RichFaces a4j并行ajax调用 问题
我想在JS事件上分别重新呈现JSF页面的部分/元素。我可以很容易地附加一个Java JSF RichFaces a4j并行ajax调用 问题,java,richfaces,ajax4jsf,Java,Richfaces,Ajax4jsf,我想在JS事件上分别重新呈现JSF页面的部分/元素。我可以很容易地附加一个 <a4j:ajax render="one two three" /> 发送给事件颁发者或使用 <a4j:jsFunction render="one two three" name="load" /> 但这些方法只发出一个请求,并在服务器响应后呈现所有内容。我想要的是并行请求和异步呈现 到目前为止我都试过了 多个ajax元素 我尝试过使用多个ajax元素,每个元素的渲染属性值不同,但
<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可以在单独调用和单独呈现的意义上工作,但请求只有在最后一个请求得到响应后才会发出,这更像是顺序加载(我使用浏览器开发工具进行了测量):
最后一种方法看起来最有希望,因为函数是异步的(它们会立即返回),但请求似乎都在一个队列中,它们是按顺序处理的,而不是并行处理的。在这里重新提出一个老问题 长话短说:这是不可能的,因为JSF是严格顺序的。句号
<a4j:jsFunction render="one" name="loadOne" />
<a4j:jsFunction render="two" name="loadTwo" />
<a4j:jsFunction render="three" name="loadThree" />