【问题标题】:Rendering gsp transform self-closing tags into empty tags渲染 gsp 将自闭合标签转换为空标签
【发布时间】:2014-02-20 15:16:19
【问题描述】:

我正在使用 gsp 模板渲染 XML,一切正常,但自闭合标签被转换为空标签。例如,如果我的模板有以下标签:

<Custom:tag />

当我在控制器中渲染时:

String xml = g.render template:template, model: model

xml 变量值为

<Custom:tag></Custom:tag>

它仍然是一个有效的 xml,但是当我尝试发送到我无法控制的服务器时,由于Custom:tag 而出现验证错误。

如何防止 Grails 解析这些标签?

【问题讨论】:

  • Grails 有一个很好的 API 来呈现 XML,所以模板不是最好的方法。你有tried it吗?
  • 你真的应该使用超酷的 groovy xml builder,你在做的是一团糟
  • 我考虑过使用模板,因为我想支持许多 XML,但 Groovy XML Builder 绝对是最好的选择。

标签: xml grails gsp


【解决方案1】:

这里有一个简单的示例,如何轻松呈现 xml

    def renderXml() {

        render(contentType: 'text/xml') {
            startTag(version: '1.2', state:'FeelGood') {
                childTag(value:"this is a value")
                nestingFun(howmuchisthefish:"42"){
                    childTag(value:"this is a value")
                    childTag(value:"this is a value")
                }

            }
        }

    }

这会产生类似的结果

<?xml version="1.0" encoding="UTF-8"?>

 <startTag version="1.2" state="feelGood">
      <childTag>"this is a value"</childTag>
      <nestingFun howmuchisthefish="42" >
          <childTag>"this is a value"</childTag>
          <childTag>"this is a value"</childTag>
      </nestingFun>
 </startTag>

【讨论】:

  • 感谢您的评论!我无法呈现自封闭标签,但在阅读您的评论后我得到了答案:selfClosedTag ()
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-12-11
  • 2013-12-05
  • 2018-04-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多