Uploaded image for project: 'XMLGraphicsCommons'
  1. XMLGraphicsCommons
  2. XGC-98

UndeclaredThrowableException while loading images

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.5, 2.0.1
    • 2.3
    • None
    • None

    Description

      UndeclaredThrowableException is thrown if an image cannot be loaded for some reason.

      Caused by: java.lang.reflect.UndeclaredThrowableException
              at com.sun.proxy.$Proxy313.readUnsignedInt(Unknown Source)
              at org.apache.xmlgraphics.image.loader.impl.PreloaderEPS.preloadImage(PreloaderEPS.java:65) [xmlgraphics-commons-1.5.jar:1.5]
              at org.apache.xmlgraphics.image.loader.ImageManager.preloadImage(ImageManager.java:175) [xmlgraphics-commons-1.5.jar:1.5]
              at org.apache.xmlgraphics.image.loader.cache.ImageCache.needImageInfo(ImageCache.java:128) [xmlgraphics-commons-1.5.jar:1.5]
              at org.apache.xmlgraphics.image.loader.ImageManager.getImageInfo(ImageManager.java:122) [xmlgraphics-commons-1.5.jar:1.5]
              at org.apache.fop.fo.flow.ExternalGraphic.bind(ExternalGraphic.java:81) [fop-1.1.jar:]
              at org.apache.fop.fo.FObj.processNode(FObj.java:124) [fop-1.1.jar:]
              at org.apache.fop.fo.FOTreeBuilder$MainFOHandler.startElement(FOTreeBuilder.java:280) [fop-1.1.jar:]
              at org.apache.fop.fo.FOTreeBuilder.startElement(FOTreeBuilder.java:175) [fop-1.1.jar:]
      ...
      Caused by: java.lang.reflect.InvocationTargetException
              at sun.reflect.GeneratedMethodAccessor2609.invoke(Unknown Source) [:1.8.0_25]
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_25]
              at java.lang.reflect.Method.invoke(Method.java:483) [rt.jar:1.8.0_25]
              at org.apache.xmlgraphics.image.loader.impl.AbstractImageSessionContext$ObservingImageInputStreamInvocationHandler.invoke(AbstractImageSessionContext.java:219) [
      xmlgraphics-commons-1.5.jar:1.5]
              ... 254 more
      Caused by: java.io.EOFException
              at javax.imageio.stream.ImageInputStreamImpl.readInt(ImageInputStreamImpl.java:251) [rt.jar:1.8.0_25]
              at javax.imageio.stream.ImageInputStreamImpl.readUnsignedInt(ImageInputStreamImpl.java:266) [rt.jar:1.8.0_25]
              ... 258 more
      

      The problem being that InvocationHandlers in the classes AbstractImageSessionContext and ObservableStream do not handle InvocationTargetException properly, and the exception is propagated up to the proxied interface where InvocationTargetException is not specified.

      I am not sure if you accept pull requests on Github, anyway here it is https://github.com/apache/xml-graphics-commons/pull/1

      Attachments

        1. InvocationTargetException.patch
          2 kB
          Simon Steiner

        Issue Links

          Activity

            People

              ssteiner Simon Steiner
              pref Vlad Arkhipov
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: