Java Question I can't access an wrapper object from B4J

Discussion in 'Libraries developers questions' started by Alejandro Moyano, Jun 8, 2019.

  1. Alejandro Moyano

    Alejandro Moyano Member Licensed User

    Hi, im alex, im building an CRUD code generator and i need beautify the ugly generated code then i trying to wraps the library JTidy, but when i run it on b4j crashes.

    My knowledge of java is pretty basic, mostly remounts time ago at university, as my main languages are PL/SQL, VB.Net and Python.

    I found this error trying to run it:

    Code:
    java.lang.NoClassDefFoundError: org/w3c/tidy/Tidy
        at jtidy.b4j.htmlbeautify.HTMLBeautify.CleanHTML(HTMLBeautify.java:
    41)
        at b4j.example.generatorlist._generate2disk(generatorlist.java:
    261)
        at b4j.example.generatecode._cmdgenerate_click(generatecode.java:
    449)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
    62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
    43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:
    566)
        at anywheresoftware.b4a.shell.Shell.runMethod(
    Shell.java:632)
        at anywheresoftware.b4a.shell.Shell.raiseEventImpl(
    Shell.java:234)
        at anywheresoftware.b4a.shell.Shell.raiseEvent(
    Shell.java:167)
        at jdk.internal.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
    43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:
    566)
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:
    91)
        at anywheresoftware.b4a.shell.ShellBA.raiseEvent2(ShellBA.java:
    98)
        at anywheresoftware.b4a.BA$
    1.run(BA.java:216)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$
    10(PlatformImpl.java:428)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$
    11(PlatformImpl.java:427)
        at javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$
    Future.run(InvokeLaterDispatcher.java:96)
        at javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
        at javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$
    3(WinApplication.java:174)
        at java.base/java.lang.Thread.run(
    Thread.java:834)
    Caused by: java.lang.ClassNotFoundException: org.w3c.tidy.Tidy
        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)
        ... 
    23 more
    java.lang.RuntimeException: java.lang.NoClassDefFoundError: org/w3c/
    tidy/Tidy
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:
    120)
        at anywheresoftware.b4a.shell.ShellBA.raiseEvent2(ShellBA.java:
    98)
        at anywheresoftware.b4a.BA$
    1.run(BA.java:216)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$
    10(PlatformImpl.java:428)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$
    11(PlatformImpl.java:427)
        at javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$
    Future.run(InvokeLaterDispatcher.java:96)
        at javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
        at javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$
    3(WinApplication.java:174)
        at java.base/java.lang.Thread.run(
    Thread.java:834)
    Caused by: java.lang.NoClassDefFoundError: org/w3c/
    tidy/Tidy
        at jtidy.b4j.htmlbeautify.HTMLBeautify.CleanHTML(HTMLBeautify.java:
    41)
        at b4j.example.generatorlist._generate2disk(generatorlist.java:
    261)
        at b4j.example.generatecode._cmdgenerate_click(generatecode.java:
    449)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
    62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
    43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:
    566)
        at anywheresoftware.b4a.shell.Shell.runMethod(
    Shell.java:632)
        at anywheresoftware.b4a.shell.Shell.raiseEventImpl(
    Shell.java:234)
        at anywheresoftware.b4a.shell.Shell.raiseEvent(
    Shell.java:167)
        at jdk.internal.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
    43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:
    566)
        at anywheresoftware.b4a.BA.raiseEvent2(BA.java:
    91)
        ... 
    9 more
    Caused by: java.lang.ClassNotFoundException: org.w3c.tidy.Tidy
        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)
        ... 
    23 more
     

    Attached Files:

  2. DonManfred

    DonManfred Expert Licensed User

    you are missing a @DependsOn
    Code:
    @DependsOn(values={"yourjar"})
    in wrappercode or a
    Code:
    #additionaljar: jarname
    in B4J
     
    Erel likes this.
  3. Alejandro Moyano

    Alejandro Moyano Member Licensed User

Loading...
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice