2012-05-22 4 views
0

이것은 내 첫 질문이므로 친절하게 생각하십시오. MarkupBuilder를 사용하여 XML을 생성하는 코드를 작성했습니다. 문제는 많은 다른 제품 유형에 대해 비슷한 XML을 많이 생성해야하고 매개 변수화 할 수없는 경우 코드가 커질 것입니다. 위의 코드에서 'ProductGroupName prodType'또는 단지 ProductGroupName을 내가 매개 변수화하려고grails/groovy xml MarkupBuilder .builder 구문을 어떻게 매개 변수화합니까?

def writer = new StringWriter() 

def builder = new groovy.xml.MarkupBuilder(writer) 

builder.'cr:request'('xmlns:prodType': 'http://www.myurl/ProductType', 'xmlns:cr': 'http://www.myurl/customerRequest') 
{ 

... 
// Bla bla lots of elements and attributes 
... 

builder.'prodType:ProductGroupName'(ID:"IDPRD"+itemCount, internalID:internalID) 
{ 

productGroup("PGroup") 

productName("PName") 

ProductSpecificDetails() 
{ 
    param("paramA") 

    stringValue("valA") 

    param("paramB") 

    stringValue("valB") 

    ... 

: 당신을 표시하면 더 잘 이해 도움이 될 수 있습니다. 이것은 내가 다른 제품에 대해 동적으로 XML을 생성하기 위해 param list와 함께 다양한 값을 전달할 수 있음을 의미합니다.

온라인으로보기 나는 $ {}로 ProductGroupName을 둘러 보았고 나는지도 [:]로 전달했지만 지금까지는 아무 소용이 없다.

누구나 내가 이것을 어떻게 달성 할 수 있는지 알고 있습니까?

도움을 주시면 감사하겠습니다.

감사합니다. 폴.

답변

1

, 당신이 (큰 따옴표를주의) 사용할 수 있어야합니다 당신이 productGroupName라는 변수를 가정하면

builder."prodType:$productGroupName"(ID:"IDPRD$itemCount", internalID:internalID) 

당신이 무엇을 의미인가요?

+0

Doholol 나는 모든 것을 시도했지만 얼굴에서 바로 나를 쳐다 보았다 .-- 그건 멋지다. 아직도 그루비와 그립에 도착! 도움과 빠른 응답에 감사드립니다! – Paul

관련 문제