无法解析类grails.doc.internal.StringEscapeCategory

时间:2014-09-09 10:24:10

标签: grails gsp

您好,

我想在标签中显示一个值。 我在gsp页面中有以下源代码:

<%@ page import="grails.doc.internal.StringEscapeCategory; toolprod.Portal;   toolprod.IndexController" %>
<html>
....
<%
for(String p : app?.portals) {
 if (p != null) {
   String span = StringEscapeCategory.encodeAsHtml("<span class=\"label label-info\">")
   out.print(span)
   out.print(p)
   span = StringEscapeCategory.encodeAsHtml("</span>")
   out.print(span)
 }
}
%>

...

我有错误无法解析类grails.doc.internal.StringEscapeCategory。 我是否需要BuildConfig.groovy中的插件? 它是否有更好的方法来转义HTML?

1 个答案:

答案 0 :(得分:1)

更惯用的是使用GSP <g:each>标记:

<g:each in="${app?.portals?.findAll()}">
  <span class="label label-info">${it}</span>
</g:each>

.findAll()(没有参数)会将列表过滤为Groovy-true的元素,即非空,零数或空字符串。