简体   繁体   中英

ORDS “java -jar ords.war” command error

I'm following this guide: https://docs.oracle.com/cd/E56351_01/doc.30/e87809/getting-started-with-RESTful-services.htm#AELIG90200

but I got stuck in "F.2 Create a RESTful Service from a SQL Query".

In the folder where Oracle REST Data Services was installed, I entered the following command in a command prompt:

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

and I got this error:

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

Why is this for? and How to fix it?

An issue with Java 9 and addressed in this SO post

Your issue can be worked around by issuing this

java -jar --add-modules java.xml.bind ords.war user test_developer "SQL Developer"

Also, if you're wanting to build RESTful Services with ORDS, you can also use SQL Developer and simply connect to the REST enabled schema and use the REST feature in the connection tree. I talk about this here .

在此处输入图片说明

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM