Hi all,
I’m having some trouble with the Excel Writer node on KNIME Server 4.9.1 and was hoping you can point out what I’m doing wrong.
I have a workflow that is supposed to write an XLSX file and send it via email. In KNIME Analytics Platform, everything works fine but on KNIME Server I always get the error message:
Excel Writer (XLS) 3:126 - ERROR: Execute failed: (“NullPointerException”): null
This happens everytime I use the Excel Writer node. CSV writer is working fine.
I’m basically using this setup to create the filename variable:
this is true…
Could you somehow obtain the executor logs?
Easiest way would be to login to KNIME WebPortal as an admin user, go to Administration and hit Download Server Log Files under Status Info
You could also share your workflow in case there’s a problem in there.
I found the following entries in the logs when executing the workflow:
Log
2019-10-28 11:40:37,008 : WARN : RMI TCP Connection(519)-10.101.64.28 : 94dde2fd-ba8a-496a-9c8d-c3bd2dc744e6 : Node : Create File Name : 2:128 : Selected directory ‘/istores/knime/knime_server/workflow_repository/jobs/94dde2/flowContextTmp/knime_tc_vvzqrx6v4bwr’ cannot be accessed!
2019-10-28 11:40:37,055 : WARN : RMI TCP Connection(520)-10.101.64.28 : 94dde2fd-ba8a-496a-9c8d-c3bd2dc744e6 : Node : Create File Name : 2:128 : Selected directory ‘/istores/knime/knime_server/workflow_repository/jobs/94dde2/flowContextTmp/knime_tc_utggn8bfvzzd’ cannot be accessed!
2019-10-28 11:40:37,069 : ERROR : KNIME-Worker-74 : 94dde2fd-ba8a-496a-9c8d-c3bd2dc744e6 : Node : Excel Writer (XLS) : 2:126 : Execute failed: (“NullPointerException”): null
java.lang.NullPointerException
at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264)
at sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:219)
at sun.awt.FontConfiguration.init(FontConfiguration.java:107)
at sun.awt.X11FontManager.createFontConfiguration(X11FontManager.java:774)
at sun.font.SunFontManager$2.run(SunFontManager.java:431)
at java.security.AccessController.doPrivileged(Native Method)
at sun.font.SunFontManager.(SunFontManager.java:376)
at sun.awt.FcFontManager.(FcFontManager.java:35)
at sun.awt.X11FontManager.(X11FontManager.java:57)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at java.lang.Class.newInstance(Class.java:442)
at sun.font.FontManagerFactory$1.run(FontManagerFactory.java:83)
at java.security.AccessController.doPrivileged(Native Method)
at sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74)
at java.awt.Font.getFont2D(Font.java:491)
at java.awt.Font.canDisplayUpTo(Font.java:2060)
at java.awt.font.TextLayout.singleFont(TextLayout.java:470)
at java.awt.font.TextLayout.(TextLayout.java:531)
at org.apache.poi.ss.util.SheetUtil.getDefaultCharWidth(SheetUtil.java:275)
at org.apache.poi.xssf.streaming.AutoSizeColumnTracker.(AutoSizeColumnTracker.java:117)
at org.apache.poi.xssf.streaming.SXSSFSheet.(SXSSFSheet.java:82)
at org.apache.poi.xssf.streaming.SXSSFWorkbook.createAndRegisterSXSSFSheet(SXSSFWorkbook.java:658)
at org.apache.poi.xssf.streaming.SXSSFWorkbook.createSheet(SXSSFWorkbook.java:679)
at org.apache.poi.xssf.streaming.SXSSFWorkbook.createSheet(SXSSFWorkbook.java:90)
at org.knime.ext.poi2.node.write2.XLSWriter2.write(XLSWriter2.java:211)
at org.knime.ext.poi2.node.write2.XLSWriter2NodeModel.execute(XLSWriter2NodeModel.java:170)
at org.knime.core.node.NodeModel.execute(NodeModel.java:733)
at org.knime.core.node.NodeModel.executeModel(NodeModel.java:567)
at org.knime.core.node.Node.invokeFullyNodeModelExecute(Node.java:1192)
at org.knime.core.node.Node.execute(Node.java:979)
at org.knime.core.node.workflow.NativeNodeContainer.performExecuteNode(NativeNodeContainer.java:559)
at org.knime.core.node.exec.LocalNodeExecutionJob.mainExecute(LocalNodeExecutionJob.java:95)
at org.knime.core.node.workflow.NodeExecutionJob.internalRun(NodeExecutionJob.java:179)
at org.knime.core.node.workflow.NodeExecutionJob.run(NodeExecutionJob.java:110)
at org.knime.core.util.ThreadUtils$RunnableWithContextImpl.runWithContext(ThreadUtils.java:328)
at org.knime.core.util.ThreadUtils$RunnableWithContext.run(ThreadUtils.java:204)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at org.knime.core.util.ThreadPool$MyFuture.run(ThreadPool.java:123)
at org.knime.core.util.ThreadPool$Worker.run(ThreadPool.java:246)
Here’s the workflow, in case you need it: XLS_Test.knwf (17.5 KB)
the log indicates that there’s a problem when trying to load the system fonts.
Could you elaborate on what kind of machine your server is running on (operating system, in a docker container, in the cloud,…)?
Did you install your jdk headless?
Hi,
Thanks for pointing this out!
We’ve installed the fontconfig package and the Excel Writer node is now working on the Server without any issues.
Thread can be closed I guess.