java - YaHP Converter 抛出 javax.xml.datatype.DatatypeConfigurationException

标签 java runtime-error pom.xml velocity html-pdf

我刚刚链接了 YaHP 转换器,将我的速度模板转换为 PDF 格式。 当我打开 Swagger 来运行 API 时,我得到的只是:

There was an unexpected error (type=Internal Server Error, status=500).
javax.xml.datatype.DatatypeConfigurationException: Provider for class javax.xml.datatype.DatatypeFactory cannot be found

这是我的 pom:

    <dependency>
        <groupId>com.google.code.maven-play-plugin.org.allcolor.yahp</groupId>
        <artifactId>yahp-internal</artifactId>
        <version>1.3</version>
    </dependency>
    <dependency>
        <groupId>org.xhtmlrenderer</groupId>
        <artifactId>core-renderer</artifactId>
        <version>R8pre2</version>
    </dependency>
    <dependency>
        <groupId>com.lowagie</groupId>
        <artifactId>itext</artifactId>
        <version>2.1.7</version>
    </dependency>
    <dependency>
        <groupId>jaxen</groupId>
        <artifactId>jaxen</artifactId>
        <version>1.1.1</version>
    </dependency>
    <dependency>
        <groupId>net.sf.jtidy</groupId>
        <artifactId>jtidy</artifactId>
        <version>r938</version>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.16</version>
    </dependency>
    <dependency>
        <groupId>com.google.code.maven-play-plugin.org.allcolor.shanidom</groupId>
        <artifactId>shani-parser</artifactId>
        <version>1.4.17-patched-yahp-1.3</version>
    </dependency>
    <dependency>
        <groupId>xml-apis</groupId>
        <artifactId>xml-apis</artifactId>
        <version>2.0.2</version>
    </dependency>

我没有在项目中的任何地方使用过这个类,而且我不知道在哪里添加什么样的依赖项。

我花了 2 个小时尝试用 google 搜索所有可能的解决方案,但一切都是徒劳!

我不知道这还需要什么。请给我一个解决方案

编辑 这是我的堆栈跟踪:

java.util.ServiceConfigurationError: javax.xml.datatype.DatatypeFactory: Provider org.apache.xerces.jaxp.datatype.DatatypeFactoryImpl not found
at java.util.ServiceLoader.fail(ServiceLoader.java:239) ~[na:1.8.0_151]
at java.util.ServiceLoader.access$300(ServiceLoader.java:185) ~[na:1.8.0_151]
at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:372) ~[na:1.8.0_151]
at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404) ~[na:1.8.0_151]
at java.util.ServiceLoader$1.next(ServiceLoader.java:480) ~[na:1.8.0_151]
at javax.xml.datatype.FactoryFinder$1.run(FactoryFinder.java:297) ~[na:1.8.0_151]
at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_151]
at javax.xml.datatype.FactoryFinder.findServiceProvider(FactoryFinder.java:292) ~[na:1.8.0_151]
at javax.xml.datatype.FactoryFinder.find(FactoryFinder.java:268) ~[na:1.8.0_151]
at javax.xml.datatype.DatatypeFactory.newInstance(DatatypeFactory.java:145) ~[na:1.8.0_151]
at javax.xml.bind.DatatypeConverterImpl.<clinit>(DatatypeConverterImpl.java:890) ~[na:1.8.0_151]
at javax.xml.bind.DatatypeConverter.initConverter(DatatypeConverter.java:140) ~[na:1.8.0_151]
at javax.xml.bind.DatatypeConverter.parseBase64Binary(DatatypeConverter.java:341) ~[na:1.8.0_151]
at io.jsonwebtoken.impl.Base64Codec.decode(Base64Codec.java:29) ~[jjwt-0.2.jar:0.2]
at io.jsonwebtoken.impl.DefaultJwtParser.setSigningKey(DefaultJwtParser.java:61) ~[jjwt-0.2.jar:0.2]
at com.wazootix.security.JwtTokenUtil.getClaimsFromToken(JwtTokenUtil.java:94) ~[classes/:na]
at com.wazootix.security.JwtTokenUtil.getUsernameFromToken(JwtTokenUtil.java:50) ~[classes/:na]
at com.wazootix.security.JwtAuthFilter.doFilterInternal(JwtAuthFilter.java:38) ~[classes/:na]

最佳答案

如果您检查 YaHP pom.xml还有xml-apis包含您缺少的 javax.xml.datatype.DatatypeFactory 类的 jar

<dependency>
        <groupId>xml-apis</groupId>
        <artifactId>xml-apis</artifactId>
        <version>2.0.2</version>
    </dependency>

关于java - YaHP Converter 抛出 javax.xml.datatype.DatatypeConfigurationException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48902891/

相关文章:

java - 使用 HtmlUnit 从 <p> 中检索值

java - Freemarker 配置问题(Maven 编译失败)

java - 磁盘上的spring代码配置addResourceLocations

maven - 依赖管理中的依赖与 Maven 版本插件中的依赖

java - 为什么 Maven Surefire 甚至没有运行?

java - this的返回值,进一步解释

c# - 为什么重命名 dll 扩展名(即重命名为 dllold)会在运行时导致 FileNotFound 异常?

java - 如何消除E Zygote?

runtime-error - 邮件枪错误”:"exposed account credentials

java - 没有版本的 Maven hibernate 依赖项。 Spring 宠物诊所