<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <br>
    Hi, folks.  We are first-time users of collectd, trying to write a
    Java plugin to collect some data.  So far we can't seem to get the
    Java plugin to find our classes; we get this error:<br>
    <blockquote> java plugin: cjni_config_load_plugin: FindClass
      (com/coraid/cms/pe/HBAMetrics) failed.<br>
       java plugin: Configuration block for `HBAMetrics' found, but no
      such configuration callback has been registered. Please make sure,
      the `LoadPlugin' lines precede the `Plugin' blocks.<br>
    </blockquote>
    We have tried many things to get around this, but nothing works. 
    What are we missing?  Presumably the above means that the Java
    plugin cannot find our class on the classpath specified in
    java.class.path, but we think we've set it up correctly.  Our config
    block for the plugin looks like this:<br>
    <blockquote><Plugin "java"><br>
          JVMArg "-verbose:jni"<br>
          JVMArg
"-Djava.class.path=/opt/collectd/share/collectd/java/coraid-plugin.jar:/opt/collectd/share/collectd/java/collectd-api.jar"<br>
          LoadPlugin "com/coraid/cms/pe/HBAMetrics"<br>
          <Plugin "HBAMetrics"><br>
          </Plugin><br>
      </Plugin><br>
    </blockquote>
    Here's the JAR file:<br>
    <blockquote># pwd<br>
      /opt/collectd/share/collectd/java<br>
      <br>
      # ls<br>
      collectd-api.jar  coraid-plugin.jar  generic-jmx.jar<br>
      <br>
      # jar tf coraid-plugin.jar <br>
      META-INF/<br>
      META-INF/MANIFEST.MF<br>
      com/<br>
      com/coraid/<br>
      com/coraid/cms/<br>
      com/coraid/cms/pe/<br>
      com/coraid/cms/pe/MetricData.class<br>
      com/coraid/cms/pe/HBAMetrics.class<br>
    </blockquote>
    And here is the HBAMetrics class:<br>
    <blockquote># jar xf coraid-plugin.jar com/coraid/cms/pe/HBAMetrics<br>
      <br>
      # javap com.coraid.cms.pe.HBAMetrics<br>
      Compiled from "HBAMetrics.java"<br>
      public class com.coraid.cms.pe.HBAMetrics implements
      org.collectd.api.CollectdConfigInterface,org.collectd.api.CollectdInitInterface,org.collectd.api.CollectdReadInterface,org.collectd.api.CollectdShutdownInterface
      {<br>
        public static final java.lang.String PLUGIN_NAME;<br>
        public com.coraid.cms.pe.HBAMetrics();<br>
        public int config(org.collectd.api.OConfigItem);<br>
        public int init();<br>
        public int read();<br>
        public int shutdown();<br>
      }<br>
    </blockquote>
    Thanks for any help with this urgent (for us) problem.<br>
    <br>
    Nicholas<br>
    <br>
  </body>
</html>