asciidoctor / asciidoctorj

:coffee: Java bindings for Asciidoctor. Asciidoctor on the JVM!
http://asciidoctor.org
Apache License 2.0
627 stars 172 forks source link

cols attribute for setting column width not handled correctly #923

Closed PartTimeDataScientist closed 4 years ago

PartTimeDataScientist commented 4 years ago

I am working on a test document for testing yml-themes and fonts and to me it looks like as if there is a bug in how asciidoctorj-pdf handles the "cols" attribute for tables.

**[cols="7,2"]**
|===
|Description |Example

|\u00a0 - no-break space
|Foo bar
...

Converted to pdf using console (expected result) image

Converted to pdf using asciidoctorj image

Converted to html using asciidoctorj" image

Related situation for using percentage values (only pdf-examples shown)

**[cols="20%,80%"]**
|===
|Description |Example

|\u00a0 - no-break space
|Foo bar
...

Converted using console image

Converted using asciidoctorj-pdf image

Decimal numbers yield two columns of equal width (no images shown):

**[cols="0.2,0.8"]**
|===
|Description |Example

|\u00a0 - no-break space
|Foo bar
...
PartTimeDataScientist commented 4 years ago

In addition, large values without "%" signs lead to a NullPointerException (which kept my busy with my code for an hour as the document was rendering correctly from the console... 🤦‍♂️ 🤷‍♂️ )

[cols="70,30"]
|===
|Description |Example

Stacktrace:

ERROR    KNIME-Worker-39-AsciidocWriter 0:26 Node    Execute failed: ("NullPointerException"): null
java.lang.NullPointerException
    at org.asciidoctor.jruby.internal.RubyObjectWrapper.<init>(RubyObjectWrapper.java:23)
    at org.asciidoctor.jruby.ast.impl.CursorImpl.<init>(CursorImpl.java:10)
    at org.asciidoctor.jruby.log.internal.JavaLogger.getSourceLocation(JavaLogger.java:208)
    at org.asciidoctor.jruby.log.internal.JavaLogger.log(JavaLogger.java:152)
    at org.asciidoctor.jruby.log.internal.JavaLogger.warn(JavaLogger.java:116)
    at org.asciidoctor.jruby.log.internal.JavaLogger$INVOKER$i$0$2$warn.call(JavaLogger$INVOKER$i$0$2$warn.gen)
    at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:204)
    at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:200)
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:375)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:174)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:316)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:86)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:159)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:138)
    at org.jruby.RubyClass.finvokeWithRefinements(RubyClass.java:530)
    at org.jruby.RubyBasicObject.send(RubyBasicObject.java:1730)
    at org.jruby.RubyKernel.send(RubyKernel.java:2192)
    at org.jruby.RubyKernel$INVOKER$s$send.call(RubyKernel$INVOKER$s$send.gen)
    at org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrTwoOrNBlock.call(JavaMethod.java:439)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:203)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:325)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:160)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:86)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:155)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:146)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:172)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:316)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:160)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:80)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:119)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:110)
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:354)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:143)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:345)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:160)
    at org.jruby.ir.interpreter.Interpreter.INTERPRET_BLOCK(Interpreter.java:116)
    at org.jruby.runtime.InterpretedIRBlockBody.yieldDirect(InterpretedIRBlockBody.java:108)
    at org.jruby.runtime.BlockBody.yield(BlockBody.java:106)
    at org.jruby.runtime.Block.yield(Block.java:184)
    at org.jruby.RubyArray.collect(RubyArray.java:2563)
    at org.jruby.RubyArray.map19(RubyArray.java:2577)
    at org.jruby.RubyArray$INVOKER$i$0$0$map19.call(RubyArray$INVOKER$i$0$0$map19.gen)
    at org.jruby.internal.runtime.methods.JavaMethod$JavaMethodZeroBlock.call(JavaMethod.java:555)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:84)
    at org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:93)
    at org.jruby.ir.instructions.CallBase.interpret(CallBase.java:549)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:361)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:80)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:123)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:110)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:141)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:345)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:86)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:159)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:146)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:172)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:316)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:86)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:159)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:138)
    at org.jruby.RubyClass.finvokeWithRefinements(RubyClass.java:530)
    at org.jruby.RubyBasicObject.send(RubyBasicObject.java:1730)
    at org.jruby.RubyKernel.send(RubyKernel.java:2192)
    at org.jruby.RubyKernel$INVOKER$s$send.call(RubyKernel$INVOKER$s$send.gen)
    at org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrTwoOrNBlock.call(JavaMethod.java:439)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:203)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:325)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:160)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:86)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:155)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:146)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:172)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:316)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:160)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:80)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:119)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:110)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:141)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:345)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:160)
    at org.jruby.ir.interpreter.Interpreter.INTERPRET_BLOCK(Interpreter.java:116)
    at org.jruby.runtime.InterpretedIRBlockBody.yieldDirect(InterpretedIRBlockBody.java:108)
    at org.jruby.runtime.BlockBody.yield(BlockBody.java:106)
    at org.jruby.runtime.Block.yield(Block.java:184)
    at org.jruby.RubyArray.collect(RubyArray.java:2563)
    at org.jruby.RubyArray.map19(RubyArray.java:2577)
    at org.jruby.RubyArray$INVOKER$i$0$0$map19.call(RubyArray$INVOKER$i$0$0$map19.gen)
    at org.jruby.internal.runtime.methods.JavaMethod$JavaMethodZeroBlock.call(JavaMethod.java:555)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:84)
    at org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:93)
    at org.jruby.ir.instructions.CallBase.interpret(CallBase.java:549)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:361)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:80)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:123)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:110)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:141)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:345)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:86)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:159)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:146)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:172)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:316)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:86)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:159)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:138)
    at org.jruby.RubyClass.finvokeWithRefinements(RubyClass.java:530)
    at org.jruby.RubyBasicObject.send(RubyBasicObject.java:1730)
    at org.jruby.RubyKernel.send(RubyKernel.java:2192)
    at org.jruby.RubyKernel$INVOKER$s$send.call(RubyKernel$INVOKER$s$send.gen)
    at org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrTwoOrNBlock.call(JavaMethod.java:439)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:203)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:325)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:160)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:86)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:155)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:146)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:172)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:316)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:160)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:80)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:119)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:110)
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:354)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:143)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:345)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:160)
    at org.jruby.ir.interpreter.Interpreter.INTERPRET_BLOCK(Interpreter.java:116)
    at org.jruby.runtime.InterpretedIRBlockBody.yieldDirect(InterpretedIRBlockBody.java:108)
    at org.jruby.runtime.BlockBody.yield(BlockBody.java:106)
    at org.jruby.runtime.Block.yield(Block.java:184)
    at org.jruby.RubyArray.collect(RubyArray.java:2563)
    at org.jruby.RubyArray.map19(RubyArray.java:2577)
    at org.jruby.RubyArray$INVOKER$i$0$0$map19.call(RubyArray$INVOKER$i$0$0$map19.gen)
    at org.jruby.internal.runtime.methods.JavaMethod$JavaMethodZeroBlock.call(JavaMethod.java:555)
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:332)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:86)
    at org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:93)
    at org.jruby.ir.instructions.CallBase.interpret(CallBase.java:549)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:361)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:87)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:66)
    at org.jruby.ir.runtime.IRRuntimeHelpers.instanceSuper(IRRuntimeHelpers.java:1169)
    at org.jruby.ir.instructions.InstanceSuperInstr.interpret(InstanceSuperInstr.java:84)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:361)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:80)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:123)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:110)
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:354)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:143)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:345)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:86)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:159)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:146)
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:375)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:174)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:316)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.ir.interpreter.Interpreter.INTERPRET_BLOCK(Interpreter.java:116)
    at org.jruby.runtime.InterpretedIRBlockBody.commonYieldPath(InterpretedIRBlockBody.java:140)
    at org.jruby.runtime.IRBlockBody.yieldSpecific(IRBlockBody.java:70)
    at org.jruby.runtime.Block.yieldSpecific(Block.java:153)
    at org.jruby.ir.runtime.IRRuntimeHelpers.yieldSpecific(IRRuntimeHelpers.java:503)
    at org.jruby.ir.instructions.YieldInstr.interpret(YieldInstr.java:76)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.processOtherOp(StartupInterpreterEngine.java:178)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:104)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:87)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:66)
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:332)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:86)
    at org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:93)
    at org.jruby.ir.instructions.CallBase.interpret(CallBase.java:549)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:361)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:86)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:159)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:138)
    at org.jruby.RubyClass.finvokeWithRefinements(RubyClass.java:530)
    at org.jruby.RubyBasicObject.send(RubyBasicObject.java:1730)
    at org.jruby.RubyKernel.send(RubyKernel.java:2192)
    at org.jruby.RubyKernel$INVOKER$s$send.call(RubyKernel$INVOKER$s$send.gen)
    at org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrTwoOrNBlock.call(JavaMethod.java:439)
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:396)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:205)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:325)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:92)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:195)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:182)
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:396)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:205)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:325)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:86)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:159)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:146)
    at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:375)
    at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:174)
    at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:316)
    at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:72)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.INTERPRET_METHOD(InterpretedIRMethod.java:87)
    at org.jruby.internal.runtime.methods.InterpretedIRMethod.call(InterpretedIRMethod.java:74)
    at org.jruby.RubyClass.finvoke(RubyClass.java:812)
    at org.jruby.runtime.Helpers.invoke(Helpers.java:460)
    at org.jruby.RubyBasicObject.callMethod(RubyBasicObject.java:376)
    at org.asciidoctor.jruby.internal.JRubyAsciidoctor.convert(JRubyAsciidoctor.java:309)
    at org.asciidoctor.jruby.internal.JRubyAsciidoctor.convert(JRubyAsciidoctor.java:344)
    at org.asciidoctor.jruby.internal.JRubyAsciidoctor.convert(JRubyAsciidoctor.java:339)
    at de.paradigmchange.asciidoc.AsciidoctorJWriterNodeModel$1.getCell(AsciidoctorJWriterNodeModel.java:500)
    at org.knime.core.data.container.SingleCellFactory.getCells(SingleCellFactory.java:105)
    at org.knime.core.data.container.RearrangeColumnsTable.calcNewCellsForRow(RearrangeColumnsTable.java:541)
    at org.knime.core.data.container.RearrangeColumnsTable.calcNewColsSynchronously(RearrangeColumnsTable.java:462)
    at org.knime.core.data.container.RearrangeColumnsTable.create(RearrangeColumnsTable.java:380)
    at org.knime.core.node.ExecutionContext.createColumnRearrangeTable(ExecutionContext.java:385)
    at de.paradigmchange.asciidoc.AsciidoctorJWriterNodeModel.execute(AsciidoctorJWriterNodeModel.java:134)
    at org.knime.core.node.NodeModel.execute(NodeModel.java:751)
    at org.knime.core.node.NodeModel.executeModel(NodeModel.java:576)
    at org.knime.core.node.Node.invokeFullyNodeModelExecute(Node.java:1236)
    at org.knime.core.node.Node.execute(Node.java:1016)
    at org.knime.core.node.workflow.NativeNodeContainer.performExecuteNode(NativeNodeContainer.java:557)
    at org.knime.core.node.exec.LocalNodeExecutionJob.mainExecute(LocalNodeExecutionJob.java:95)
    at org.knime.core.node.workflow.NodeExecutionJob.internalRun(NodeExecutionJob.java:201)
    at org.knime.core.node.workflow.NodeExecutionJob.run(NodeExecutionJob.java:117)
    at org.knime.core.util.ThreadUtils$RunnableWithContextImpl.runWithContext(ThreadUtils.java:334)
    at org.knime.core.util.ThreadUtils$RunnableWithContext.run(ThreadUtils.java:210)
    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)
mojavelinux commented 4 years ago

Which version of AsciidoctorJ are you using?

PartTimeDataScientist commented 4 years ago

Console C:\Windows\System32>asciidoctor-pdf -V Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 Asciidoctor PDF 1.5.3 using Asciidoctor 2.0.10 [https://asciidoctor.org] Runtime Environment (jruby 9.2.9.0 (2.5.7) 2019-10-30 458ad3e Java HotSpot(TM) 64-Bit Server VM 25.101-b13 on 1.8.0_101-b13 +jit [mswin32-x86_64]) (lc:IBM437 fs:UTF-8 in:IBM437 ex:IBM437)

Java asciidoctorj-2.3.0.jar asciidoctorj-api-2.3.0.jar asciidoctorj-pdf-1.5.3.jar jcommander-1.78.jar jruby-complete-9.2.11.1.jar

JAR-Files downloaded from https://mvnrepository.com/artifact/org.asciidoctor

mojavelinux commented 4 years ago

Something is not right about your Asciidoctor installation. I would recommend that you install AsciidoctorJ using Chocolately. Based on what you've shown, you aren't using AsciidoctorJ.

PartTimeDataScientist commented 4 years ago

The console Asciidoctor installation might be not right but it is not the affected one. It's the same Eclipse plugin that I am dealing with already a bit longer that causes the problems. There rhe relevant .jars are in the classpath and asciidoctor is loaded as follows

Asciidoctor asciidoctor = create(Arrays.asList(
    //gems from asciidoctorj 2.2.0
    "uri:classloader:/gems/asciidoctor-2.0.10/lib",
    "uri:classloader:/gems/tilt-2.0.9/lib",
    "uri:classloader:/gems/thread_safe-0.3.6-java/lib",
    "uri:classloader:/gems/temple-0.8.2/lib",
    "uri:classloader:/gems/slim-4.0.1/lib",
    "uri:classloader:/gems/rouge-3.12.0/lib",
    "uri:classloader:/gems/open-uri-cached-0.0.5/lib",
    "uri:classloader:/gems/haml-5.0.4/lib",
    "uri:classloader:/gems/erubis-2.7.0/lib",
    "uri:classloader:/gems/concurrent-ruby-1.0.5-java/lib",
    "uri:classloader:/gems/coderay-1.1.2/lib",

    //gems from asciidoctorj-pdf
    "uri:classloader:/gems/asciidoctor-pdf-1.5.3/lib",
    "uri:classloader:/gems/ttfunk-1.5.1/lib",
    "uri:classloader:/gems/treetop-1.6.10/lib",
    "uri:classloader:/gems/thread_safe-0.3.6-java/lib",
    "uri:classloader:/gems/text-hyphen-1.4.1/lib",
    "uri:classloader:/gems/safe_yaml-1.0.5/lib",
    "uri:classloader:/gems/ruby-rc4-0.1.5/lib",
    "uri:classloader:/gems/rouge-3.16.0/lib",
    "uri:classloader:/gems/rghost-0.9.7/lib",
    "uri:classloader:/gems/public_suffix-1.4.6/lib",
    "uri:classloader:/gems/prawn-templates-0.1.2/lib",
    "uri:classloader:/gems/prawn-table-0.2.2/lib",
    "uri:classloader:/gems/prawn-svg-0.30.0/lib",
    "uri:classloader:/gems/prawn-icon-2.5.0",
    "uri:classloader:/gems/prawn-icon-2.5.0/lib",
    "uri:classloader:/gems/prawn-icon-2.5.0/data",
    "uri:classloader:/gems/prawn-icon-2.5.0/data/fonts",
    "uri:classloader:/gems/prawn-icon-2.5.0/data/fonts/fa4",
    "uri:classloader:/gems/prawn-icon-2.5.0/data/fonts/fab",
    "uri:classloader:/gems/prawn-icon-2.5.0/data/fonts/far",
    "uri:classloader:/gems/prawn-icon-2.5.0/data/fonts/fas",    
    "uri:classloader:/gems/prawn-icon-2.5.0/data/fonts/fi",
    "uri:classloader:/gems/prawn-icon-2.5.0/data/fonts/pf",                         
    "uri:classloader:/gems/prawn-2.2.2/lib",
    "uri:classloader:/gems/polyglot-0.3.5/lib",
    "uri:classloader:/gems/pdf-reader-2.4.0/lib",
    "uri:classloader:/gems/pdf-core-0.7.0/lib",
    "uri:classloader:/gems/hashery-2.1.2/lib",
    "uri:classloader:/gems/css_parser-1.7.1/lib",
    "uri:classloader:/gems/concurrent-ruby-1.1.6/lib",
    "uri:classloader:/gems/Ascii85-1.0.3/lib",
    "uri:classloader:/gems/afm-0.2.2/lib",
    "uri:classloader:/gems/addressable-2.4.0/lib",                          

    //gems from asciidoctorj-epub
    "uri:classloader:/gems/rubyzip-2.0.0/lib",
    "uri:classloader:/gems/nokogiri-1.10.9-java/lib",
    "uri:classloader:/gems/mime-types-3.3.1/lib",
    "uri:classloader:/gems/mime-types-data-3.2020.0425/lib",
    "uri:classloader:/gems/mini_portile2-2.4.0/lib",
    "uri:classloader:/gems/gepub-1.0.11/lib",
    "uri:classloader:/gems/asciidoctor-epub3-1.5.0.alpha.16/lib"));
mojavelinux commented 4 years ago

This conversation is getting split, so I'm going to close this issue until we can determine what's going on with #924 and whether it even has to do with AsciidoctorJ at all.