gpt4 book ai didi

java - 编码时空元素的 JAXB 默认值

转载 作者:数据小太阳 更新时间:2023-10-29 02:40:25 26 4
gpt4 key购买 nike

编码 JAXB 对象时,我想为生成的 XML 设置一些默认值。

我不想使用 nillable=true,因为它会生成带有不必要的 xsi:nil="true" 的空标签,这不是为了设置默认值。相反,我想生成带有一些占位符字符(例如“?”)的 XML。

用例:我将构建一个用于 Web 服务测试的工具。我需要将整个请求 xml 呈现给用户(如 SOAPUI)。

最佳答案

Use case : I am going to build a tool for WebService testing. There I need to present the entire request xml to the user (Like SOAPUI).

占位符字符的想法实际上行不通。例如,? 是字符串的默认值,但不是 int、boolean 或大多数复杂值(即表示客户的嵌套地址信息)。相反,您需要一个反射(reflect)类型的值。

Then I would have to write large and complex reflection based code. Just assume that that is almost not possible in my case.

这段反射代码可能不会像您想象的那么糟糕。快速搜索可能还会显示使用“虚拟”数据填充对象的库。将其与 JAXB 连接时,您可以利用 Marshaller.Listener 在编码事件之前填充对象。

关于java - 编码时空元素的 JAXB 默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27013103/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com