Hey, i just checked it and it doesn't work with the class name "TriggeredScraperImplMBean". The exception only disappears, if the class is named "TriggeredScraper".
After a short research i found the following convention: "By convention, an MBean interface takes the name of the Java class that implements it, with the suffix MBean added" (see https://docs.oracle.com/javase/tutorial/jmx/mbeans/standard.html). Till Am Di., 27. Aug. 2019 um 11:01 Uhr schrieb Julian Feinauer < j.feina...@pragmaticminds.de>: > This would be my preferred solution as Tim just renamed the Scraper to > their current Name. > > Julian > > Am 27.08.19, 10:01 schrieb "Till Voß" <till.v...@codecentric.de>: > > Hi Julian, > > yes, that also works. > > Regards, > Till > > Am Di., 27. Aug. 2019 um 09:34 Uhr schrieb Julian Feinauer < > j.feina...@pragmaticminds.de>: > > > Hi Till, > > > > good pointer. > > This was in issue with two parallel branches (mine and Tims). > > > > I would rather Opt for Renaming the MBean to > TriggeredScraperImplMBean. > > > > This should also work, or? > > > > Julian > > > > Am 27.08.19, 09:24 schrieb "Till Voß" <till.v...@codecentric.de>: > > > > Hi all, > > > > > > > > currently i am developing a plc4x logstash plugin and i have an > issue > > with > > the TriggeredScraper. > > > > The TriggeredScraperImpl implements the interface > > "TriggeredScraperMBean". > > The File "TriggeredScraperImpl.java" contains line 163 > > "mBeanServer.registerMBean(this, new ObjectName(MX_DOMAIN, > "scraper", > > "scraper"));", which leads to the following exception: > > > > > > > > > > > > *09:05:26.915 [main] DEBUG > > > > org.apache.plc4x.java.scraper.triggeredscraper.TriggeredScraperImpl - > > > Unable to register Scraper as MBean* > > > *javax.management.NotCompliantMBeanException: MBean class > > > > org.apache.plc4x.java.scraper.triggeredscraper.TriggeredScraperImpl > > does > > > not implement DynamicMBean, and neither follows the Standard > MBean > > > conventions (javax.management.NotCompliantMBeanException: Class > > > > org.apache.plc4x.java.scraper.triggeredscraper.TriggeredScraperImpl > > is not > > > a JMX compliant Standard MBean) nor the MXBean conventions > > > (javax.management.NotCompliantMBeanException: > > > > org.apache.plc4x.java.scraper.triggeredscraper.TriggeredScraperImpl: > > Class > > > > org.apache.plc4x.java.scraper.triggeredscraper.TriggeredScraperImpl > > is not > > > a JMX compliant MXBean)* > > > * at > > > > > > java.management/com.sun.jmx.mbeanserver.Introspector.checkCompliance(Introspector.java:177)* > > > * at > > > > > > java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:313)* > > > * at > > > > > > java.management/com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522)* > > > * at > > > > > > org.apache.plc4x.java.scraper.triggeredscraper.TriggeredScraperImpl.<init>(TriggeredScraperImpl.java:163)* > > > * at > > > > > > org.apache.plc4x.java.scraper.triggeredscraper.TriggeredScraperImpl.<init>(TriggeredScraperImpl.java:134)* > > > * at > > > > > > org.apache.plc4x.java.scraper.triggeredscraper.TriggeredScraperImpl.<init>(TriggeredScraperImpl.java:96)* > > > * at > > org.apache.plc4x.logstash.Plc4x.start(Plc4x.java:116)* > > > * at > > > > > > org.apache.plc4x.logstash.Plc4xInputTest.testPlc4xInput(Plc4xInputTest.java:51)* > > > * 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)** > > > ....* > > > > > > > > This means the Standard MBean naming convention is violated. My > > proposed > > fix is to refactor the class name from "TriggeredScraperImpl" to > > "TriggeredScraper" to fulfil the naming conventions. What do you > think? > > > > > > > > Best regards > > > > Till > > > > > > > > > > > > -- > > Till Voß > > > > codecentric AG | Kreuznacher Straße 30 | 60486 Frankfurt am Main > | > > Deutschland > > mobil: +49 151 643 305 40 | fax: +49 69 714 02 682 > > > > Sitz der Gesellschaft: Solingen | HRB 25917 | Amtsgericht > Wuppertal > > Vorstand: Michael Hochgürtel . Rainer Vehns . Ulrich Kühn > > Aufsichtsrat: Patric Fedlmeier (Vorsitzender) . Klaus Jäger . > Jürgen > > Schütz > > > > > > > > -- > Till Voß > > codecentric AG | Kreuznacher Straße 30 | 60486 Frankfurt am Main | > Deutschland > mobil: +49 151 643 305 40 | fax: +49 69 714 02 682 > > Sitz der Gesellschaft: Solingen | HRB 25917 | Amtsgericht Wuppertal > Vorstand: Michael Hochgürtel . Rainer Vehns . Ulrich Kühn > Aufsichtsrat: Patric Fedlmeier (Vorsitzender) . Klaus Jäger . Jürgen > Schütz > > > -- Till Voß codecentric AG | Kreuznacher Straße 30 | 60486 Frankfurt am Main | Deutschland mobil: +49 151 643 305 40 | fax: +49 69 714 02 682 Sitz der Gesellschaft: Solingen | HRB 25917 | Amtsgericht Wuppertal Vorstand: Michael Hochgürtel . Rainer Vehns . Ulrich Kühn Aufsichtsrat: Patric Fedlmeier (Vorsitzender) . Klaus Jäger . Jürgen Schütz