java - 关于创建 JAXB 上下文的 JAXBException

标签 java jaxb applet java-web-start

当我将应用程序作为独立的 Java 程序运行时,它运行良好。当我将它作为小程序运行时,它会抛出 JAXBException 并带有以下堆栈跟踪信息。

javax.xml.bind.JAXBException: jaxb.properties in package com/test/package does not contain the javax.xml.bind.context.factory property.
    at javax.xml.bind.ContextFinder.find(Unknown Source)
    at javax.xml.bind.JAXBContext.newInstance(Unknown Source)
    at javax.xml.bind.JAXBContext.newInstance(Unknown Source)

当我添加 jaxb.properties 时,出现以下错误 -

javax.xml.bind.JAXBException
 - with linked exception:
[java.lang.NoSuchMethodException: com.sun.xml.internal.ws.developer.JAXBContextFactory.createContext([Ljava.lang.Class;, java.util.Map)]
    at javax.xml.bind.ContextFinder.newInstance(Unknown Source)
    at javax.xml.bind.ContextFinder.newInstance(Unknown Source)
    at javax.xml.bind.ContextFinder.find(Unknown Source)
    at javax.xml.bind.JAXBContext.newInstance(Unknown Source)
    at javax.xml.bind.JAXBContext.newInstance(Unknown Source)

我在类路径中添加了以下 jars -

  • jaxws-rt-2.2.1
  • jsr311-api-1.1.1
  • jersey-core-1.2
  • jersey-client-1.2

导致此错误的原因。我是否缺少任何依赖项。

编辑: 我在浏览器和开发环境中都使用 Java 7 u 59。

最佳答案

Jersey 1.2 版似乎已经过时。我认为 Jersey 2.21 是当前版本。此外,您应该检查您正在使用哪个 JDK/JRE 来运行您的程序。小程序是否在与您将其作为应用程序启动时相同的环境/Java 版本中运行?

关于java - 关于创建 JAXB 上下文的 JAXBException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32268883/

相关文章:

JavaFX TabPane 从外部 Controller 中选择选项卡

java - 当 JVM 看到一个实现了 Serialized 的类时,它会理解什么

java - 如何播放另一个文件的声音

java - 下面的配置是什么意思(jaxb-fluent-api)?

java - 为什么在此 java applet 教程代码中的循环中将线程优先级设置为最大?

java - 如何为 Spark 中的 SaveAsSequenceFile 方法提供编解码器?

java - 在 JDK 1.5 中找不到包 javax.xml.bind

java - 带有未知@XmlRootElement 的 Jaxb Unmarshall

java - 网页: accessing local file of the client/Alternatives to Silverlight/Java Applets

java - Applet 和 JQuery