簡體   English   中英

Groovy:從閉包對象構建XML

[英]Groovy: Building the XML from Closure Object

我正在從像這樣的對象中構建XML:

def buildRequestParameters()
        {
            def requestParametersXML = {
                RequestParameters {
                    IgnoreEditWarnings("false")
                    Type("SaveWithoutValidation")
                    ContractNumber("")
                    Date("null")
                    Status("null")
                    RecordHTTPRequest("false")
                }
            }

            def requestParameters = StreamingMarkupBuilder.bind(requestParametersXML)
            return requestParameters
        }

在將其綁定到StreamMarkupBuilder之前,我需要向該對象添加另一個element/node
如何更新和訪問閉包對象元素?

if(someCondition)
{
  Add another element to RequestParameters //???
} 
def requestParameters = StreamingMarkupBuilder.bind(requestParametersXML)

注意:今天是我與Groovy合作的第二天

在構建xml時添加條件:

import groovy.xml.*

def buildRequestParameters(params)
{
    def requestParametersXML = {
        RequestParameters {
            IgnoreEditWarnings("false")
            Type("SaveWithoutValidation")
            ContractNumber("")
            Date("null")
            Status("null")
            if (params.Element1) {
              Element1 {
                Element11( params.Element1.Element11 )
              }
            }
            RecordHTTPRequest("false")
        }
    }

    def requestParameters = new StreamingMarkupBuilder().bind(requestParametersXML)
    return requestParameters
}

println buildRequestParameters( [:] )

println buildRequestParameters( [Element1: [Element11: "element11 value"]] )

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM