【问题标题】:JAXB marshalling exception javax.xml.stream.FactoryConfigurationError running with Java 5使用 Java 5 运行的 JAXB 编组异常 javax.xml.stream.FactoryConfigurationError
【发布时间】:2012-02-21 03:19:43
【问题描述】:

我正在我的 JUit 测试类中尝试一个简单的 JAXB 编组,并且我使用的是 Java 5。运行测试时出现此错误。

javax.xml.stream.FactoryConfigurationError:未找到提供程序 com.bea.xml.stream.XMLOutputFactoryBase

我在 pom 中添加了以下依赖项。

     <dependency>
        <groupId>javax.xml.bind</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>2.2</version>
    </dependency>
    <dependency>
        <groupId>com.sun.xml.bind</groupId>
        <artifactId>jaxb-xjc</artifactId>
        <version>2.2</version>
    </dependency>
    <dependency>
        <groupId>com.sun.xml.bind</groupId>
        <artifactId>jaxb-impl</artifactId>
        <version>2.2</version>
    </dependency>
    <dependency>
        <groupId>javax.xml</groupId>
        <artifactId>jsr173</artifactId>
        <version>1.0</version>
    </dependency>
    <dependency>
       <groupId>javax.activation</groupId>
       <artifactId>activation</artifactId>
       <version>1.1</version>
    </dependency>

非常感谢您对此问题的任何帮助。

【问题讨论】:

    标签: maven xml-serialization jaxb jaxb2


    【解决方案1】:

    从上面的依赖列表中,您似乎正在使用jsr173 - 用于 XML 的 Steaming API。您指定的依赖项仅提供 API。您需要添加一个实现此功能的提供者。如果没有找到,它寻找的默认提供者是 bea 实现。因此错误。

    这是一个discussion。您可以添加 bea 实现或替代实现,例如 woodstox

    【讨论】:

    • Link that helped 当我添加 stax 依赖项时,我可以使用 jaxb 运行测试
    • 感谢 Raghuram 的回复我相信所需的实现与 stax 依赖项捆绑在一起。
    猜你喜欢
    • 1970-01-01
    • 2014-07-24
    • 2020-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-16
    • 1970-01-01
    相关资源
    最近更新 更多