Uploaded image for project: 'Batik'
  1. Batik
  2. BATIK-707

SVG Symbol element cloneNode throw NullPointerException

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Resolution: Fixed
    • 1.7
    • None
    • SVG DOM
    • None
    • Operating System: All
      Platform: All

    Description

      Cloning SVG Symbol element loaded from SVG document gives SVG Error "null":

      java.lang.NullPointerException
      at
      org.apache.batik.dom.svg.SVGOMElement.createLiveAnimatedPreserveAspectRatio(Unknown
      Source)
      at org.apache.batik.dom.svg.SVGOMSymbolElement.<init>(Unknown Source)
      at org.apache.batik.dom.svg.SVGOMSymbolElement.newNode(Unknown Source)
      at org.apache.batik.dom.AbstractNode.cloneNode(Unknown Source)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
      at java.lang.reflect.Method.invoke(Unknown Source)
      at org.mozilla.javascript.MemberBox.invoke(Unknown Source)
      at org.mozilla.javascript.NativeJavaMethod.call(Unknown Source)
      at org.mozilla.javascript.optimizer.OptRuntime.call1(Unknown Source)
      at org.mozilla.javascript.gen.c5._c1(Inline <script> file:/C:/Documents and
      Settings/ads/Desktop/Batik 1.7b1 error/NodeCloneErr.svg:7:5)
      at org.mozilla.javascript.gen.c5.call(Inline <script> file:/C:/Documents and
      Settings/ads/Desktop/Batik 1.7b1 error/NodeCloneErr.svg:7)
      at org.mozilla.javascript.optimizer.OptRuntime.callName(Unknown Source)
      at org.mozilla.javascript.gen.c6._c0(Event attribute file:/C:/Documents and
      Settings/ads/Desktop/Batik 1.7b1 error/NodeCloneErr.svg:19 onload:1)
      at org.mozilla.javascript.gen.c6.call(Event attribute file:/C:/Documents and
      Settings/ads/Desktop/Batik 1.7b1 error/NodeCloneErr.svg:19 onload)
      at org.mozilla.javascript.ContextFactory.doTopCall(Unknown Source)
      at org.mozilla.javascript.ScriptRuntime.doTopCall(Unknown Source)
      at org.mozilla.javascript.gen.c6.call(Event attribute file:/C:/Documents and
      Settings/ads/Desktop/Batik 1.7b1 error/NodeCloneErr.svg:19 onload)
      at org.mozilla.javascript.gen.c6.exec(Event attribute file:/C:/Documents and
      Settings/ads/Desktop/Batik 1.7b1 error/NodeCloneErr.svg:19 onload)
      at org.mozilla.javascript.Context.evaluateReader(Unknown Source)
      at org.apache.batik.script.rhino.RhinoInterpreter$2.run(Unknown Source)
      at org.mozilla.javascript.Context.call(Unknown Source)
      at org.mozilla.javascript.ContextFactory.call(Unknown Source)
      at org.apache.batik.script.rhino.RhinoInterpreter.evaluate(Unknown Source)
      at org.apache.batik.bridge.BaseScriptingEnvironment$1.handleEvent(Unknown Source)
      at org.apache.batik.dom.events.EventSupport.fireEventListeners(Unknown Source)
      at org.apache.batik.dom.events.EventSupport.fireEventListeners(Unknown Source)
      at org.apache.batik.dom.events.EventSupport.dispatchEvent(Unknown Source)
      at org.apache.batik.dom.AbstractNode.dispatchEvent(Unknown Source)
      at org.apache.batik.bridge.BaseScriptingEnvironment.dispatchSVGLoad(Unknown Source)
      at org.apache.batik.bridge.BaseScriptingEnvironment.dispatchSVGLoad(Unknown Source)
      at
      org.apache.batik.bridge.BaseScriptingEnvironment.dispatchSVGLoadEvent(Unknown
      Source)
      at org.apache.batik.bridge.UpdateManager.dispatchSVGLoadEvent(Unknown Source)
      at org.apache.batik.bridge.UpdateManager.dispatchSVGLoadEvent(Unknown Source)
      at org.apache.batik.swing.svg.SVGLoadEventDispatcher.run(Unknown Source)

      for this SVG document:

      <?xml version="1.0" ?>

      <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
      <script type="text/ecmascript"><![CDATA[
      function tryError(elementId) {
      element = document.getElementById(elementId);
      if(element != null)

      { clone = element.cloneNode(true); /* Throws NullPointerException */ }

      }

      ]]></script>
      <title>Node Clone Error Demo</title>
      <symbol id="symbol_id" onload="tryError('symbol_id')">
      <rect x="100" y="100" height="100" width="100"/>
      </symbol>
      </svg>

      Attachments

        1. TestImageNodeCloning.java
          4 kB
          michael.bishop

        Activity

          People

            batik-dev@xmlgraphics.apache.org Batik Developer's Mailing list
            d.agapitov@sofeainc.com Dmitry Agapitov
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: