Grails从1.3.7升级到2.2.3,产生奇怪的异常

时间:2013-10-23 15:30:54

标签: grails

在我的'Spring Source Tools Suite'中,我导入了一个使用命令行Grails v1.3.7构建的项目。 IDE使用v2.2.3。我有一个很好的应用程序工作,但有两件事不起作用,我已经努力了两天,试图让它工作。这两个不起作用的部分是上传jpeg文件并在按钮点击时捕获文本。我只是在这个问题上寻求对后来问题的帮助。这是错误消息:     Message: It looks like you are missing some calls to the r:layoutResources tag. After rendering your page the following have not been rendered: [defer]

这些调用是针对项目之外的类,以及内部依赖类。我不知道是什么叫他们或我如何解决这个问题。

提前感谢您的帮助,

〜比尔

PS:我知道将问题添加到已经回答过的其他人的问题上是不好的。因此,我将添加一个指向我在此处阅读的另一个主题的链接:Grails Resources Plugin and AJAX loaded javascript。但是我的gsp模板中没有g:layoutBody。我会在每个r:layoutResources disposition="defer"/之后或g:标记之后添加g.form吗?任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

查看标签r:layoutResources:http://grails-plugins.github.io/grails-resources/ref/Tags/layoutResources.html

的文档
  

此标记具有特殊行为,因为第一次调用它时会使用处置“head”呈现资源(旨在包含在页面的部分中),第二次调用它时会呈现处置“推迟“资源。

因此无需在标记中添加disposition="defer",因为它会自动将第二个标记呈现为处置“延迟”。

此外,文档还显示了拨打这些电话的最佳做法。

  

为了最好地使用,应该在Sitemesh布局的头部和身体末端调用它。

<html>
   <head>
      <g:layoutTitle/>
      <r:layoutResources/>
   </head>
   <body>
      <g:layoutBody/>
      <r:layoutResources/>
   </body>
</html>

所以如果你有一个主要的布局,你可以在头部和身体的末端放置这些标签调用。在视图中使用此布局可确保在对资源标记进行所有其他调用后正确调用r:layoutResources