plantuml-----StringIndexOutOfBoundsException

0 votes
asked May 29, 2019 in Bug by anonymous
edited May 30, 2019

hello!
I am using plantuml,and runing into a bug,can you help me solve it?

the problem is showing:
java.lang.StringIndexOutOfBoundsException: String index out of range: -1java.lang.String.substring(String.java:1915)net.sourceforge.plantuml.svek.SvgResult.substring(SvgResult.java:125)net.sourceforge.plantuml.svek.DotStringFactory.solve(DotStringFactory.java:368)net.sourceforge.plantuml.svek.GeneralImageBuilder.buildImage(GeneralImageBuilder.java:208)net.sourceforge.plantuml.svek.CucaDiagramFileMakerSvek.createFileInternal(CucaDiagramFileMakerSvek.java:105)net.sourceforge.plantuml.svek.CucaDiagramFileMakerSvek.createFile(CucaDiagramFileMakerSvek.java:71)net.sourceforge.plantuml.cucadiagram.CucaDiagram.exportDiagramInternal(CucaDiagram.java:379)net.sourceforge.plantuml.classdiagram.ClassDiagram.exportDiagramInternal(ClassDiagram.java:194)net.sourceforge.plantuml.UmlDiagram.exportDiagramNow(UmlDiagram.java:202)net.sourceforge.plantuml.AbstractPSystem.exportDiagram(AbstractPSystem.java:135)net.sourceforge.plantuml.servlet.DiagramResponse.sendDiagram(DiagramResponse.java:105)net.sourceforge.plantuml.servlet.UmlDiagramService.doDiagramResponse(UmlDiagramService.java:93)net.sourceforge.plantuml.servlet.UmlDiagramService.doGet(UmlDiagramService.java:60)javax.servlet.http.HttpServlet.service(HttpServlet.java:634)javax.servlet.http.HttpServlet.service(HttpServlet.java:741)org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490)org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668)org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:834)org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1417)org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)java.lang.Thread.run(Thread.java:745)

the image is this:
https://km.sankuai.com/plantuml/svg/VLLBJzj04BxlhrYbbvRAaNgD4A95Ga9gUm0gSJNE95Xrx6YzBaqV4f4efD075IrGnAC7818Ib5Oqq8IVuqT-HXVlnlRQJgKSihFVp7mpyyrwtAOgeKxDG4YTjobHDOerGxLjF4DLwjZuDS8OtyVm4ZI7mjrPefRX7Yw9Q_GMcHO5JArw2RlT8tzdCzXTxfzVz2zFWhMElzH4Y5fLe0j0U2WUF0o3xzHrytbi526ZyvJ923aQrIqpDZxKDCingMvMfnq3MFxS-BckamJW5ToUGyxp5gLMhOIzbLxGs_G_hBgzenWyGQ2iqmouVtd5gak3v-RcmenHGiads6i6tuwzTnstjoKyXz2UOGEWK6r48OXUNQ0iAs_esHQB4wEdGJLczLfEHUS7_dQ7EyNmHqwb0gogBB-RJM_bju0FOSOgZCSpj3enylzCLAT3mdYjVQ-zdWx0fWrr2kLXJf-tWuqLlxNXhHt6JizC3GXLTNE8bxzt6XmUYrIitbnXPTlVRozxhUzeogH0Age6W-gubaSKfwwCuS988HM9xSg2Ea0L7XGOicmjcae8JUWK2uYb652Xjw4OLYmX3o7n5Cl3VOeXqU9OT5d2ZWsPbPQo9G-ZRnHbi1uPkzY4Z5qMVURr44eU_E4-aMHbSoHDkSQfCh0sqWPAhU29txhozZVy7wiIgn4bR8CoblON_PEnKOS54OuH3GzP9TIQDASqcRnAAozv5s-GAF8fEn3La9MsUXeiTznkLs2UG6qUY0HnRtQzBpjoeoODQp7Lf52o_f-cVt69ai_VBHIZl0UGOmMhi3UZYcA5CkKq6FBNWTlzXFXHXiJA4w218PxAOtW1HWdhTixTX4C8c5fZjb472PAN9Ao1poiNbgYKeo9OiPYZ3VTwYVsydt-zxbU449XEZNELHnFABZXx7tJR0fGadMhfTJDeVqHe7Cmo-xZ-0m00

2 Answers

0 votes
answered May 29, 2019 by Serge Wenger Work (15,620 points)
Which version are you using?

Work well with version 1.2019.06 offline and on the server
commented May 31, 2019 by anonymous

I am using the version 1.2019.06,but it also does not work.The error still exist.

0 votes
answered Jun 24, 2020 by beckhayer (140 points)

A StringIndexOutOfBoundsException is thrown when a String or StringBuffer object detects an out-of-range index. An out-of-range index occurs when the index is less than zero, or greater than or equal to the length of the string.  Using the substring method, a subset of the character sequence can be extracted from a string. The substring index must be any value from 0 to the length of a string. If the index exceeds the limit, StringIndexOutOfBoundsException is thrown in String substring method.

How to solve the StringIndexOutOfBoundsException

  • Check the length of the string.
  • Exception handling using try...catch.


 

...