grails - Grails并行加载小部件

标签 grails

我的应用程序中有一些小部件。我想将它们加载到单个页面中。它在顺序加载时始终有效,但是在并行加载时会失败(引发exception-java.lang.IllegalStateException-无法请求请求属性-请求不再有效!)。我想念什么吗?还有其他并行加载方式吗?请提出建议。这是我的代码片段

class TestController {
def widget1() {
       render "Widget 1"
   }

   def widget2() {
      render "Widget 2"
   }
}

class ManagerController {
   def loadSequential(){
       def data = [:]
       data['view1'] = g.include(action: 'widget1', controller: 'test')
       data['view2'] = g.include(action: 'widget2', controller: 'test')
       render data['view1']
       render data['view2']
   }
   def loadParallel(){
       def data = [:]
       PromiseMap pm = new PromiseMap()
       pm['view1'] = { g.include(action: 'widget1', controller: 'test') }
       pm['view2'] = { g.include(action: 'widget2', controller: 'test') }
       def result = pm.get()

       render result['view1']
       render result['view2']
   }
}

最佳答案

这是我在这件事上的2便士。

我们已经尽力使Grails并行呈现页面,但是我们无法使其工作。在深入研究之后,我们只是发现Grails还没有准备好这种东西。它的构建方式始终是线程专有的。

我想说这都是由于org.codehaus.groovy.grails.web.pages.GroovyPageOutputStack尚未准备好进行并发访问。

我会看一下这个空间,以防万一有人设法使其正常工作。

关于grails - Grails并行加载小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35910236/

相关文章:

grails - 可以从另一个插件覆盖插件的 Controller 吗?

generics - Grails 类型检查/CompileStatic/GrailsCompileStatic

spring - 方法不允许 405,在 grails 从 2.5.2 升级到 3.3.11 后点击 POST 请求时

tomcat - 如何在grails中设置tomcat特权="true"?

grails - grails run-app 的 Intellij IDEA 14 错误

rest - 使用Restful-API插件上传Grails文件

unit-testing - 在 Grails 2.2 中是否可以对 mongodb 动态属性进行单元测试?

apache - 在 WebFlow 中强制使用 https

tomcat - 是否可以将根域 URL 映射到 Grails 的 Controller ?

gorm - 如何按字母顺序检索列表的成员?