NullPointerException with 1.2026.1, works with 1.2025.10

0 votes
asked Feb 24 in Bug by Rnd-User (120 points)

With 1.2026.1, this code leads to the exception below.

@startuml
skinparam MaxMessageSize 250
skinparam SequenceMessageAlignment direction
a -> b: lorem ipsum lorem ipsum lorem ipsum
@enduml

It used to work with 1.2025.10.
Thanks for looking into this!

An error has occured : java.lang.NullPointerException
You Shall Not Pass
 
PlantUML (1.2026.2beta3) has crashed.
 
Diagram size: 5 lines / 136 characters.
 
Java Runtime: OpenJDK Runtime Environment
JVM: OpenJDK 64-Bit Server VM
Default Encoding: UTF-8
Language: en
Country: US
 
PLANTUML_LIMIT_SIZE: 4096
 
You should send this diagram and this image to
plantuml@gmail.com
or
post to
https://plantuml.com/qa
to solve this issue.
You can try to turn around this issue by simplifing your diagram.
 
java.lang.NullPointerException
net.sourceforge.plantuml.klimt.creole.SheetBlock1.getCoef(SheetBlock1.java:184)
net.sourceforge.plantuml.klimt.creole.SheetBlock1.getCoef(SheetBlock1.java:180)
net.sourceforge.plantuml.klimt.creole.SheetBlock1.initMap(SheetBlock1.java:166)
net.sourceforge.plantuml.klimt.creole.SheetBlock1.calculateDimension(SheetBlock1.java:195)
net.sourceforge.plantuml.klimt.creole.SheetBlock2.calculateDimension(SheetBlock2.java:91)
net.sourceforge.plantuml.skin.AbstractTextualComponent.getPureTextWidth(AbstractTextualComponent.java:103)
net.sourceforge.plantuml.skin.AbstractTextualComponent.getTextWidth(AbstractTextualComponent.java:108)
net.sourceforge.plantuml.skin.rose.ComponentRoseArrow.getPreferredWidth(ComponentRoseArrow.java:348)
net.sourceforge.plantuml.sequencediagram.graphic.MessageArrow.getArrowYStartLevel(MessageArrow.java:167)
net.sourceforge.plantuml.sequencediagram.graphic.Step1Message.prepareMessage(Step1Message.java:103)
net.sourceforge.plantuml.sequencediagram.graphic.DrawableSetInitializer.prepareMessage(DrawableSetInitializer.java:543)
net.sourceforge.plantuml.sequencediagram.graphic.DrawableSetInitializer.createDrawableSet(DrawableSetInitializer.java:166)
net.sourceforge.plantuml.sequencediagram.graphic.SequenceDiagramFileMakerPuma2.<init>(SequenceDiagramFileMakerPuma2.java:107)
net.sourceforge.plantuml.sequencediagram.SequenceDiagram.getSequenceDiagramPngMaker(SequenceDiagram.java:299)
net.sourceforge.plantuml.sequencediagram.SequenceDiagram.exportDiagramInternal(SequenceDiagram.java:315)
net.sourceforge.plantuml.UmlDiagram.exportDiagramNow(UmlDiagram.java:120)
net.sourceforge.plantuml.AbstractPSystem.exportDiagram(AbstractPSystem.java:215)
net.sourceforge.plantuml.servlet.DiagramResponse.sendDiagram(DiagramResponse.java:159)
net.sourceforge.plantuml.servlet.UmlDiagramService.doGet(UmlDiagramService.java:106)
javax.servlet.http.HttpServlet.service(HttpServlet.java:529)
javax.servlet.http.HttpServlet.service(HttpServlet.java:623)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:197)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:166)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:88)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:83)
org.apache.catalina.valves.StuckThreadDetectionValve.invoke(StuckThreadDetectionValve.java:185)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:72)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344)
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:398)
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935)
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1831)
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:973)
org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:491)
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
java.base/java.lang.Thread.run(Thread.java:829)

1 Answer

+1 vote
answered Feb 27 by The-Lu (88,340 points)
selected Feb 27 by Rnd-User
 
Best answer

Hello R.,

That is now fixed with the last snapshot (v1.2025.2+) here:

Thank for the report,
Regards,
Th.

...