【问题标题】:To remove unwanted space from xml从 xml 中删除不需要的空间
【发布时间】:2017-02-08 11:21:34
【问题描述】:

我有一个 .wsdl 文件,它与 .xsd 文件交互,根据 .xsd 文件中定义的结构生成一些包和类

然后,如果我从包含不需要的空间的 sopUI 中点击 web 服务请求。 现在我想在解组的同时修剪那个空间我找到了一个解决方案 How to configure JAXB so it trims whitespaces by default

但我想自动生成 package-info.java 文件 或提出任何解决方案。

【问题讨论】:

    标签: java xml web-services xsd jaxb


    【解决方案1】:

    我昨天也遇到了同样的问题。

    最好的解决办法是使用

    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)

    。它是一个现有的内置类型适配器,可以帮助您修剪 CDATA 内容。

    例如,让我们来看看这个 XML

    <books>
       <book>
          <name><![CDATA[ <br> Harry Potter </br>
            ]]></name>
    
       </book>
    </books>
    

    为此,您将拥有一个 Java 类。

    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "books")
    public class Books {
    
        @XmlValue
        protected String name;
        ......
    }
    

    您必须将该适配器添加到包含 CDATA 部分的变量名称的正上方

    @XmlValue
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    protected String name;
    

    然后IDE会要求你导入需要的库文件

    import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
    import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
    

    就是这样。希望对你有帮助:)。

    【讨论】:

      猜你喜欢
      • 2014-09-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-18
      • 2023-03-22
      • 1970-01-01
      相关资源
      最近更新 更多