/chart error with OH2 on Synology DSM 6

Hi,

I’m trying to get some rrd4j charts rendered on my OH2 Synology Diskstation, but get the following errors in openhab.log instead. My set-up is OH2 2.1.0.008 on a DS216+ with DSM 6.0.3-8754 Update 4. Any ideas how to fix it (Oracle Java 8.0.121-0013 installed)?

sitemap line: Chart item=Result period=D

Error Message

2017-08-15 21:43:43.441 [WARN ] [eclipse.jetty.servlet.ServletHandler] - /chart
java.lang.NullPointerException
at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264)[:1.8.0_121]
at sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:219)[:1.8.0_121]
at sun.awt.FontConfiguration.init(FontConfiguration.java:107)[:1.8.0_121]
at sun.awt.X11FontManager.createFontConfiguration(X11FontManager.java:774)[:1.8.0_121]
at sun.font.SunFontManager$2.run(SunFontManager.java:431)[:1.8.0_121]
at java.security.AccessController.doPrivileged(Native Method)[:1.8.0_121]
at sun.font.SunFontManager.(SunFontManager.java:376)[:1.8.0_121]
at sun.awt.FcFontManager.(FcFontManager.java:35)[:1.8.0_121]
at sun.awt.X11FontManager.(X11FontManager.java:57)[:1.8.0_121]
at sun.reflect.GeneratedConstructorAccessor148.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)[:1.8.0_121]
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)[:1.8.0_121]
at java.lang.Class.newInstance(Class.java:442)[:1.8.0_121]
at sun.font.FontManagerFactory$1.run(FontManagerFactory.java:83)[:1.8.0_121]
at java.security.AccessController.doPrivileged(Native Method)[:1.8.0_121]
at sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74)[:1.8.0_121]
at java.awt.Font.getFont2D(Font.java:491)[:1.8.0_121]
at java.awt.Font.defaultLineMetrics(Font.java:2176)[:1.8.0_121]
at java.awt.Font.getLineMetrics(Font.java:2283)[:1.8.0_121]
at java.awt.font.TextLayout.fastInit(TextLayout.java:598)[:1.8.0_121]
at java.awt.font.TextLayout.(TextLayout.java:393)[:1.8.0_121]
at org.knowm.xchart.internal.chartpart.AxisTickCalculator.willLabelsFitInTickSpaceHint(AxisTickCalculator.java:148)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.internal.chartpart.AxisTickDateCalculator.calculate(AxisTickDateCalculator.java:214)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.internal.chartpart.AxisTickDateCalculator.(AxisTickDateCalculator.java:115)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.internal.chartpart.Axis.getAxisTickCalculator(Axis.java:363)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.internal.chartpart.Axis.getXAxisHeightHint(Axis.java:286)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.internal.chartpart.Axis.paint(Axis.java:180)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.internal.chartpart.AxisPair.paint(AxisPair.java:147)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.internal.chartpart.ChartPainter.paint(ChartPainter.java:114)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.Chart.paint(Chart.java:102)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.eclipse.smarthome.ui.internal.chart.DefaultChartProvider.createChart(DefaultChartProvider.java:228)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.eclipse.smarthome.ui.internal.chart.ChartServlet.doGet(ChartServlet.java:255)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)[18:javax.servlet-api:3.1.0]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)[18:javax.servlet-api:3.1.0]
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)[81:org.eclipse.jetty.servlet:9.2.19.v20160908]
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587)[81:org.eclipse.jetty.servlet:9.2.19.v20160908]
at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71)[172:org.ops4j.pax.web.pax-web-jetty:4.3.0]
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)[79:org.eclipse.jetty.security:9.2.19.v20160908]
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:287)[172:org.ops4j.pax.web.pax-web-jetty:4.3.0]
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)[81:org.eclipse.jetty.servlet:9.2.19.v20160908]
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80)[172:org.ops4j.pax.web.pax-web-jetty:4.3.0]
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.Server.handle(Server.java:499)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)[71:org.eclipse.jetty.io:9.2.19.v20160908]
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)[83:org.eclipse.jetty.util:9.2.19.v20160908]
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)[83:org.eclipse.jetty.util:9.2.19.v20160908]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_121]
2017-08-15 21:43:43.465 [WARN ] [eclipse.jetty.servlet.ServletHandler] - /chart
java.lang.NullPointerException
at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264)[:1.8.0_121]
at sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:219)[:1.8.0_121]
at sun.awt.FontConfiguration.init(FontConfiguration.java:107)[:1.8.0_121]
at sun.awt.X11FontManager.createFontConfiguration(X11FontManager.java:774)[:1.8.0_121]
at sun.font.SunFontManager$2.run(SunFontManager.java:431)[:1.8.0_121]
at java.security.AccessController.doPrivileged(Native Method)[:1.8.0_121]
at sun.font.SunFontManager.(SunFontManager.java:376)[:1.8.0_121]
at sun.awt.FcFontManager.(FcFontManager.java:35)[:1.8.0_121]
at sun.awt.X11FontManager.(X11FontManager.java:57)[:1.8.0_121]
at sun.reflect.GeneratedConstructorAccessor148.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)[:1.8.0_121]
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)[:1.8.0_121]
at java.lang.Class.newInstance(Class.java:442)[:1.8.0_121]
at sun.font.FontManagerFactory$1.run(FontManagerFactory.java:83)[:1.8.0_121]
at java.security.AccessController.doPrivileged(Native Method)[:1.8.0_121]
at sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74)[:1.8.0_121]
at java.awt.Font.getFont2D(Font.java:491)[:1.8.0_121]
at java.awt.Font.defaultLineMetrics(Font.java:2176)[:1.8.0_121]
at java.awt.Font.getLineMetrics(Font.java:2283)[:1.8.0_121]
at java.awt.font.TextLayout.fastInit(TextLayout.java:598)[:1.8.0_121]
at java.awt.font.TextLayout.(TextLayout.java:393)[:1.8.0_121]
at org.knowm.xchart.internal.chartpart.AxisTickCalculator.willLabelsFitInTickSpaceHint(AxisTickCalculator.java:148)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.internal.chartpart.AxisTickDateCalculator.calculate(AxisTickDateCalculator.java:214)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.internal.chartpart.AxisTickDateCalculator.(AxisTickDateCalculator.java:115)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.internal.chartpart.Axis.getAxisTickCalculator(Axis.java:363)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.internal.chartpart.Axis.getXAxisHeightHint(Axis.java:286)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.internal.chartpart.Axis.paint(Axis.java:180)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.internal.chartpart.AxisPair.paint(AxisPair.java:147)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.internal.chartpart.ChartPainter.paint(ChartPainter.java:114)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.knowm.xchart.Chart.paint(Chart.java:102)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.eclipse.smarthome.ui.internal.chart.DefaultChartProvider.createChart(DefaultChartProvider.java:228)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at org.eclipse.smarthome.ui.internal.chart.ChartServlet.doGet(ChartServlet.java:255)[136:org.eclipse.smarthome.ui:0.9.0.b5]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)[18:javax.servlet-api:3.1.0]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)[18:javax.servlet-api:3.1.0]
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)[81:org.eclipse.jetty.servlet:9.2.19.v20160908]
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587)[81:org.eclipse.jetty.servlet:9.2.19.v20160908]
at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71)[172:org.ops4j.pax.web.pax-web-jetty:4.3.0]
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)[79:org.eclipse.jetty.security:9.2.19.v20160908]
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:287)[172:org.ops4j.pax.web.pax-web-jetty:4.3.0]
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)[81:org.eclipse.jetty.servlet:9.2.19.v20160908]
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80)[172:org.ops4j.pax.web.pax-web-jetty:4.3.0]
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.Server.handle(Server.java:499)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)[80:org.eclipse.jetty.server:9.2.19.v20160908]
at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)[71:org.eclipse.jetty.io:9.2.19.v20160908]
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)[83:org.eclipse.jetty.util:9.2.19.v20160908]
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)[83:org.eclipse.jetty.util:9.2.19.v20160908]
at java.lang.Thread.run(Thread.java:745)[:1.8.0_121]

Meanwhile I played around with different set-up etc. and found out, that rrd4j is not running. No wonder that /chart is not working. :confused:

The thing is: I’ve installed it via Paper UI, set rrd4j as default persitence service in Configuration>System and used the same rrd4j.persist file I use on my raspberry.

I’m thankful for every hint I get.