代码之家  ›  专栏  ›  技术社区  ›  Sebastián

ORDS“java-jar ORDS.war”命令错误

  •  1
  • Sebastián  · 技术社区  · 7 年前

    我遵循以下指南: https://docs.oracle.com/cd/E56351_01/doc.30/e87809/getting-started-with-RESTful-services.htm#AELIG90200

    但我陷入了“F.2从SQL查询创建RESTful服务”的困境。

    在安装Oracle REST Data Services的文件夹中,我在命令提示符下输入了以下命令:

    java -jar ords.war user test_developer "SQL Developer"
    

    我得到了这个错误:

    java.lang.NoClassDefFoundError: javax/xml/bind/ValidationEventHandler
            at java.base/java.lang.Class.getDeclaredFields0(Native Method)
            at java.base/java.lang.Class.privateGetDeclaredFields(Unknown Source)
            at java.base/java.lang.Class.getDeclaredFields(Unknown Source)
            at oracle.dbtools.injector.impl.__Reflections.constantFields(__Reflectio                           ns.java:30)
            at oracle.dbtools.injector.impl.InjectorImpl$Builder.add(InjectorImpl.ja                           va:356)
            at oracle.dbtools.injector.impl.InjectorImpl$Builder.add(InjectorImpl.ja                           va:378)
            at oracle.dbtools.injector.impl.InjectorImpl$Builder.add(InjectorImpl.ja                           va:310)
            at oracle.dbtools.common.di.Services$Builder.add(Services.java:409)
            at oracle.dbtools.common.di.Services$Builder.load(Services.java:474)
            at oracle.dbtools.common.app.ApplicationContext.loadServices(Application                           Context.java:167)
            at oracle.dbtools.cmdline.Commands.main(Commands.java:345)
            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Nativ                           e Method)
            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknow                           n Source)
            at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Un                           known Source)
            at java.base/java.lang.reflect.Method.invoke(Unknown Source)
            at oracle.dbtools.jarcl.Entrypoint.main(Entrypoint.java:58)
    Caused by: java.lang.ClassNotFoundException: javax.xml.bind.ValidationEventHandl                           er
            at java.base/java.lang.ClassLoader.findClass(Unknown Source)
            at oracle.dbtools.jarcl.JarClassLoader.findClass(JarClassLoader.java:63)
            at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
            at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
            ... 16 more
    java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
            at java.base/java.lang.Class.getDeclaredFields0(Native Method)
            at java.base/java.lang.Class.privateGetDeclaredFields(Unknown Source)
            at java.base/java.lang.Class.getDeclaredFields(Unknown Source)
            at oracle.dbtools.injector.impl.__Reflections.constantFields(__Reflectio                           ns.java:30)
            at oracle.dbtools.injector.impl.InjectorImpl$Builder.add(InjectorImpl.ja                           va:356)
            at oracle.dbtools.injector.impl.InjectorImpl$Builder.add(InjectorImpl.ja                           va:378)
            at oracle.dbtools.injector.impl.InjectorImpl$Builder.add(InjectorImpl.ja                           va:310)
            at oracle.dbtools.common.di.Services$Builder.add(Services.java:409)
            at oracle.dbtools.common.di.Services$Builder.load(Services.java:474)
            at oracle.dbtools.common.app.ApplicationContext.loadServices(Application                           Context.java:167)
            at oracle.dbtools.cmdline.Commands.main(Commands.java:345)
            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Nativ                           e Method)
            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknow                           n Source)
            at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Un                           known Source)
            at java.base/java.lang.reflect.Method.invoke(Unknown Source)
            at oracle.dbtools.jarcl.Entrypoint.main(Entrypoint.java:58)
    Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
            at java.base/java.lang.ClassLoader.findClass(Unknown Source)
            at oracle.dbtools.jarcl.JarClassLoader.findClass(JarClassLoader.java:63)
            at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
            at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
            ... 16 more
    java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
            at java.base/java.lang.Class.getDeclaredFields0(Native Method)
            at java.base/java.lang.Class.privateGetDeclaredFields(Unknown Source)
            at java.base/java.lang.Class.getDeclaredFields(Unknown Source)
            at oracle.dbtools.injector.impl.__Reflections.constantFields(__Reflectio                           ns.java:30)
            at oracle.dbtools.injector.impl.InjectorImpl$Builder.add(InjectorImpl.ja                           va:356)
            at oracle.dbtools.injector.impl.InjectorImpl$Builder.add(InjectorImpl.ja                           va:378)
            at oracle.dbtools.injector.impl.InjectorImpl$Builder.add(InjectorImpl.ja                           va:310)
            at oracle.dbtools.common.di.Services$Builder.add(Services.java:409)
            at oracle.dbtools.common.di.Services$Builder.load(Services.java:474)
            at oracle.dbtools.common.app.ApplicationContext.loadServices(Application                           Context.java:167)
            at oracle.dbtools.cmdline.Commands.main(Commands.java:345)
            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Nativ                           e Method)
            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknow                           n Source)
            at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Un                           known Source)
            at java.base/java.lang.reflect.Method.invoke(Unknown Source)
            at oracle.dbtools.jarcl.Entrypoint.main(Entrypoint.java:58)
    Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
            at java.base/java.lang.ClassLoader.findClass(Unknown Source)
            at oracle.dbtools.jarcl.JarClassLoader.findClass(JarClassLoader.java:63)
            at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
            at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
            ... 16 more
    null
    java.lang.reflect.InvocationTargetException
            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Nativ                           e Method)
            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknow                           n Source)
            at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Un                           known Source)
            at java.base/java.lang.reflect.Method.invoke(Unknown Source)
            at oracle.dbtools.jarcl.Entrypoint.main(Entrypoint.java:58)
    Caused by: java.lang.NoClassDefFoundError: javax/xml/bind/ValidationEventHandler
            at java.base/java.lang.Class.getDeclaredConstructors0(Native Method)
            at java.base/java.lang.Class.privateGetDeclaredConstructors(Unknown Sour                           ce)
            at java.base/java.lang.Class.getDeclaredConstructors(Unknown Source)
            at oracle.dbtools.injector.impl.__Reflections.getConstructorsAnnotatedWi                           th(__Reflections.java:56)
            at oracle.dbtools.injector.impl.Constructors.getInjectConstructors(Const                           ructors.java:39)
            at oracle.dbtools.injector.impl.DependencyGraph.annotatedConstructor(Dep                           endencyGraph.java:416)
            at oracle.dbtools.injector.impl.DependencyGraph.dependencies(DependencyG                           raph.java:204)
            at oracle.dbtools.injector.impl.DependencyGraph.graph(DependencyGraph.ja                           va:297)
            at oracle.dbtools.injector.impl.DependencyGraph.<init>(DependencyGraph.j                           ava:55)
            at oracle.dbtools.injector.impl.DependencyGraph.<init>(DependencyGraph.j                           ava:37)
            at oracle.dbtools.injector.impl.DependencyGraph$Builder.build(Dependency                           Graph.java:490)
            at oracle.dbtools.injector.impl.InjectorImpl$Builder.build(InjectorImpl.                           java:385)
            at oracle.dbtools.injector.impl.InjectorImpl$Builder.build(InjectorImpl.                           java:310)
            at oracle.dbtools.common.di.Services$Builder.build(Services.java:416)
            at oracle.dbtools.common.di.Services$Builder.build(Services.java:431)
            at oracle.dbtools.conf.ConfigurationSettings.injectConfigurationSettingV                           alues(ConfigurationSettings.java:48)
            at oracle.dbtools.common.app.ApplicationContext.<init>(ApplicationContex                           t.java:98)
            at oracle.dbtools.common.app.ApplicationContext.<init>(ApplicationContex                           t.java:48)
            at oracle.dbtools.cmdline.Commands.main(Commands.java:345)
            ... 5 more
    Caused by: java.lang.ClassNotFoundException: javax.xml.bind.ValidationEventHandl                           er
            at java.base/java.lang.ClassLoader.findClass(Unknown Source)
            at oracle.dbtools.jarcl.JarClassLoader.findClass(JarClassLoader.java:63)
            at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
            at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
            ... 24 more
    

    这是为什么?如何修复它?

    1 回复  |  直到 7 年前
        1
  •  2
  •   thatjeffsmith    7 年前

    Java 9的一个问题,在 this SO post

    您的问题可以通过发布此

    jar—添加模块java。xml。绑定ORD。war用户测试开发者“SQL开发者”

    此外,如果您想用ORD构建RESTful服务,还可以使用SQL Developer,只需连接到支持REST的模式,并使用连接树中的REST功能。我来谈谈这个 here .

    enter image description here