0

I downloaded wsimport and wanted to run it. However, when I run wsimport.bat I get an error message stating that classes could not be found. I use OpenJDK 11 on Windows 10.

Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/xml/bind/api/ErrorListener
    at java.base/java.lang.ClassLoader.defineClass1(Native Method)
    at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1016)
    at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174)
    at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:802)
    at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:700)
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:623)
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    at java.base/java.lang.ClassLoader.defineClass1(Native Method)
    at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1016)
    at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174)
    at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:802)
    at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:700)
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:623)
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    at java.base/java.lang.Class.getDeclaredConstructors0(Native Method)
    at java.base/java.lang.Class.privateGetDeclaredConstructors(Class.java:3138)
    at java.base/java.lang.Class.getConstructor0(Class.java:3343)
    at java.base/java.lang.Class.getConstructor(Class.java:2152)
    at com.sun.tools.ws.Invoker.invoke(Invoker.java:150)
    at com.sun.tools.ws.WsImport.main(WsImport.java:56)
    Caused by: java.lang.ClassNotFoundException: com.sun.xml.bind.api.ErrorListener
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    ... 24 more

What can I do to run wsimport.bat without errors?

Net_Hans
  • 115
  • 12
  • 1
    make sure the right libraries/classes are on your classpath – Stultuske Jul 30 '19 at 11:26
  • what is the right classpath? – Net_Hans Jul 30 '19 at 12:28
  • depends on your machine – Stultuske Jul 30 '19 at 12:51
  • Refer: https://docs.oracle.com/javase/tutorial/essential/environment/paths.html to understand more about classpaths and include the appropriate libraries on the classpath. – Ironluca Jul 30 '19 at 13:02
  • I have set the path to the openjdk libs and to the jaxws-ri libs and I still get the exception – Net_Hans Jul 30 '19 at 13:23
  • wsimport is part of JAX-WS. JAX-WS is no longer part of the JDK. And JAX-WS requires JAXB, which also is no longer part of the JDK. Both JAX-WS and JAXB *are* part of Java EE, so I recommend you [download GlassFish](https://www.oracle.com/technetwork/java/javaee/downloads/index.html) and use its `wsimport` command. – VGR Jul 30 '19 at 13:44

0 Answers0