You are viewing a plain text version of this content. The canonical link for it is here.
Posted to batik-dev@xmlgraphics.apache.org by bu...@apache.org on 2007/04/10 11:00:49 UTC

DO NOT REPLY [Bug 42075] New: - Re-parenting an element with a SET element causes NullPointerExceptions

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG�
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=42075>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND�
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=42075

           Summary: Re-parenting an element with a SET element causes
                    NullPointerExceptions
           Product: Batik
           Version: 1.7
          Platform: Other
        OS/Version: other
            Status: NEW
          Severity: normal
          Priority: P2
         Component: GVT
        AssignedTo: batik-dev@xmlgraphics.apache.org
        ReportedBy: frodef@stud.cs.uit.no


In order to move an element to the "top", I use the following script, which
removes an element from its parent, and inserts it as the last child of the root
element (thereby ensuring it gets draw last).

function raise(e) {
  if
(document.documentElement.childNodes.item(document.documentElement.childNodes.length-1)
!= e) {
    e.parentNode.removeChild(e);
    document.documentElement.appendChild(e);
  }

However, if the element in question has a SET sub-element, something in the
event processing gets confused, and each subsequent event causes a
NullPointerException like this:

     [java]     at
org.apache.batik.anim.timing.TimedElement.eventOccurred(Unknown Source)
     [java]     at
org.apache.batik.anim.timing.EventbaseTimingSpecifier.handleEvent(Unknown Source)
     [java]     at
org.apache.batik.dom.events.EventSupport.fireEventListeners(Unknown Source)
     [java]     at
org.apache.batik.dom.events.EventSupport.fireEventListeners(Unknown Source)
     [java]     at
org.apache.batik.dom.events.EventSupport.dispatchEvent(Unknown Source)
     [java]     at org.apache.batik.dom.AbstractNode.dispatchEvent(Unknown Source)
     [java]     at
org.apache.batik.bridge.BridgeEventSupport$Listener.dispatchMouseEvent(Unknown
Source)
     [java]     at
org.apache.batik.bridge.BridgeEventSupport$Listener.mouseEntered(Unknown Source)
     [java]     at
org.apache.batik.gvt.event.AbstractAWTEventDispatcher.processMouseEvent(Unknown
Source)
     [java]     at
org.apache.batik.gvt.event.AbstractAWTEventDispatcher.dispatchMouseEvent(Unknown
Source)
     [java]     at
org.apache.batik.gvt.event.AbstractAWTEventDispatcher.dispatchEvent(Unknown Source)
     [java]     at
org.apache.batik.gvt.event.AWTEventDispatcher.dispatchEvent(Unknown Source)
     [java]     at
org.apache.batik.gvt.event.AbstractAWTEventDispatcher.mouseMoved(Unknown Source)
     [java]     at
org.apache.batik.swing.svg.AbstractJSVGComponent$SVGListener$1MouseMovedRunnable.run(Unknown
Source)
     [java]     at org.apache.batik.util.RunnableQueue.run(Unknown Source)
     [java]     at java.lang.Thread.run(Thread.java:595)


The following SVG demonstrates the effect: click the rectangle to trigger the
raise function, and then observe the exceptions:

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">

<svg version="1.1" xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sbthd="http://www.selvaag.no/2007/sbthd" viewBox="-0.50 -1.00 11.00 22.00"
font-family="Verdana" font-size="50.0">

<title>
House Designer SVG Output
</title>
<defs>
<script type="text/ecmascript">
<![CDATA[function raise(e) {
  if
(document.documentElement.childNodes.item(document.documentElement.childNodes.length-1)
!= e) {
    e.parentNode.removeChild(e);
    document.documentElement.appendChild(e);
  }
}]]>
</script>
</defs>

<rect x="0.0" y="0.0" width="10.0" height="20.0" fill="blue" opacity="0.9"
stroke="black" stroke-width="1.0" onclick="raise(evt.target)">
  <set attributeName="stroke-width" to="5.0" begin="mouseover" end="mouseout" />
</rect>
</svg>

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

---------------------------------------------------------------------
To unsubscribe, e-mail: batik-dev-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: batik-dev-help@xmlgraphics.apache.org


DO NOT REPLY [Bug 42075] - Re-parenting an element with a SET element causes NullPointerExceptions

Posted by bu...@apache.org.
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG�
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=42075>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND�
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=42075


cam@apache.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED




------- Additional Comments From cam@apache.org  2007-09-25 20:59 -------
This is now fixed in SVN.

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

---------------------------------------------------------------------
To unsubscribe, e-mail: batik-dev-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: batik-dev-help@xmlgraphics.apache.org