Issue Details (XML | Word | Printable)

Key: GLIFFY-473
Type: Bug Bug
Status: Tested Tested
Resolution: Fixed
Priority: Blocker Blocker
Assignee: Clint Dickson
Reporter: Chris Kohlhardt
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Gliffy

Image transcoding failure test case

Created: 09/Jan/08 12:58 PM   Updated: 09/Jun/09 07:25 PM
Component/s: Core - Image Transcoding
Affects Version/s: Gliffy Premium - Accounts Release
Fix Version/s: Gliffy Premium - Accounts Release, Gliffy Plugin for Confluence - 1.4.0
Security Level: Anyone may view

File Attachments: 1. XML File 1346324.xml (20 kB)



 Description  « Hide
Reported by user in BASICSUPPORT-287

Image transcoding failure.



 All   Comments   Change History      Sort Order: Ascending order - Click to sort in descending order
Chris Kohlhardt added a comment - 09/Jan/08 12:59 PM - edited
2008-01-09 13:05:32,376 ERROR
TP-Processor95
com.gliffy.core.action.client.ClientExportFileAction:logThrowable:72

Throwable caught...
Thrown object:java.lang.Exception
Short Description:java.lang.Exception: User Id: 1000056
Image Type: jpg
Diagram Id: 1346833 Caller: hostedfilemenu
Message: User Id: 1000056
Image Type: jpg
Diagram Id: 1346833 Caller: hostedfilemenu
Stack trace:
com.gliffy.core.util.BattlestarLogger.logThrowableWithMessage(BattlestarLogger.java:11)
com.gliffy.core.action.client.ClientExportFileAction.process(ClientExportFileAction.java:158)
com.gliffy.core.action.GliffyAction.execute(GliffyAction.java:61)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:374)
org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
java.lang.Thread.run(Thread.java:595)

Caused by throwable:java.lang.Exception
Short Description:java.lang.Exception:
TranscoderInput: null
TranscoderOutput: null
ByteArrayInputStream: null
ImageTranscoder: null
Diagram: Filename:Jeff_Fitzsimmons_-_CW_contribute DiagramID: 1346833
Message:
TranscoderInput: null
TranscoderOutput: null
ByteArrayInputStream: null
ImageTranscoder: null
Diagram: Filename:Jeff_Fitzsimmons_-_CW_contribute DiagramID: 1346833
Stack trace:
com.gliffy.core.biz.DefaultDiagramBiz.transcodeDiagramToImage(DefaultDiagramBiz.java:453)
com.gliffy.core.biz.DefaultDiagramBiz.getDiagramAsImage(DefaultDiagramBiz.java:562)
com.gliffy.core.biz.DefaultDiagramBiz.getExportedImage(DefaultDiagramBiz.java:618)
com.gliffy.core.action.client.ClientExportFileAction.process(ClientExportFileAction.java:90)
com.gliffy.core.action.GliffyAction.execute(GliffyAction.java:61)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:374)
org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
java.lang.Thread.run(Thread.java:595)

Caused by throwable:java.lang.NumberFormatException
Short Description:java.lang.NumberFormatException: For input string: "NaN"
Message:For input string: "NaN"
Stack trace:
java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
java.lang.Integer.parseInt(Integer.java:447)
java.lang.Integer.parseInt(Integer.java:497)
com.gliffy.core.svg.ToolsSVGBuilder.createStraightLine(ToolsSVGBuilder.java:60)
com.gliffy.core.svg.SVGFactory.getSVG(SVGFactory.java:65)
com.gliffy.core.svg.XMLToSVGHandler.startElement(XMLToSVGHandler.java:224)
org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
com.gliffy.core.biz.DefaultDiagramBiz.transcodeDiagramToImage(DefaultDiagramBiz.java:367)
com.gliffy.core.biz.DefaultDiagramBiz.getDiagramAsImage(DefaultDiagramBiz.java:562)
com.gliffy.core.biz.DefaultDiagramBiz.getExportedImage(DefaultDiagramBiz.java:618)
com.gliffy.core.action.client.ClientExportFileAction.process(ClientExportFileAction.java:90)
com.gliffy.core.action.GliffyAction.execute(GliffyAction.java:61)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:374)
org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
java.lang.Thread.run(Thread.java:595)


Chris Kohlhardt added a comment - 09/Jan/08 01:01 PM
XML of diagram that is failing.

Chris Kohlhardt added a comment - 09/Jan/08 01:10 PM
The attribute linec was set to NaN 36 times which caused this error. Changing this parameter to 0 fixed the problem.

Clint, can you add a check in the transcoding stuff to handle this?


Clint Dickson added a comment - 09/Jan/08 01:22 PM
Check added in development codebase. I've seen similar issues in the past, so i've also updated the Gliffy Client has also been updated to not pass or accept (create objects) with "NaN"s or "undefined".

We can regression test this on Stage during QA.