在Grails中渲染XML输出

时间:2012-06-22 06:32:52

标签: xml grails render

我有一个名为paymentMethods ..

的域类

对于REST服务,我想将paymentMethods作为XML格式发送。

使用

render paymentMethods as XML

我可以发送。但我不想发送一些像cardNumber这样的机密数据。如何从该XML中删除某些特定标记。

谢谢....

2 个答案:

答案 0 :(得分:1)

您有两个选项 - 为XML转换器注册自定义ObjectMarshaller,以便它不会出现您不希望公开的输出属性。或者你可以使用Groovy的Markup构建器来构建你想要的xml。

如果您希望使用渲染为XML - 您需要创建一个自定义ObjectMarshaller来公开您选择的属性

  1. 有关如何注册自定义ObjectMarshaller
  2. 的信息,请参阅此文章
  3. 这是Groovy markup builder

答案 1 :(得分:1)

检查一下: Custom string formatting in Grails JSON marshaller

通过添加

,可以很容易地为您的任务进行调整
implements ObjectMarshaller<XML>

代替

implements ObjectMarshaller<JSON>

您可以为要跳过的属性指定一些名称。

另请查看此帖子:Grails custom XML Marshaller