Customer Portal

ClassNotFound exception when developing custom components

Comments 1

  • Avatar
    tkramolis
    0
    Comment actions Permalink
    Hi mrmac,

    Yes, the "classLoaderProvider" is now required, we have to update the guide. Creating this classloader provider is very simple: in your Designer plugin, just create new class which extends com.cloveretl.gui.plugin.engine.AbstractClassLoaderProvider class (leave body of the class empty) and enter fully qualified name of this class in the "classLoaderProvider" field.

    If you've left the "classLoaderProvider" field empty, your engine plugin failed to be loaded resulting in the error you mentioned.

    To diagnose Designer plugins loading issues, run the CloverETL Designer with standard and error outputs redirected to files -- go into Designer installation directory and execute the following command:
    CloverETLDesigner.exe -clean > std.log 2> err.log

    (the -clean option is mentioned in the guide's "Integrating a Custom Component in CloverETL Designer" section). In these files you can view Designer startup logging messages. After the Designer is started, splash screen appears, all the Designer plugins are being loaded and once the splash screen disappears, you can examine the err.log file which should be empty if everything went well, or should contain (hopefully useful) error message. The std.log contains info about successfully loaded plugins -- one of the "Component extension plugin found:" lines should be followed by a line with ID of your Designer plugin. There should be also "Engine plugin extension plugin found:" line followed by your engine plugin ID, plugins directory and classloader class name.

    Hope this helps.

    Best regards,
    _________________
    Tomas Kramolis
    Javlin, a.s.

Please sign in to leave a comment.