Hi there, Now when I run my code I get the following error:
org.w3c.dom.DOMException: The current document is unable to create an element of the requested type (namespace: http://www.w3.org/2000/svg, name: spot). at org.apache.batik.dom.AbstractNode.createDOMException(Unknown Source) at org.apache.batik.dom.svg.SVGDOMImplementation.createElementNS(Unknown Source) at org.apache.batik.dom.svg.SVGOMDocument.createElementNS(Unknown Source) at mypackage22.KeyAccidentClient$4.run(KeyAccidentClient.java:349) at org.apache.batik.util.RunnableQueue.run(Unknown Source) at java.lang.Thread.run(Thread.java:534) Pls advice. Thx yasmin > Hi Yasmin, > > [EMAIL PROTECTED] wrote on 03/12/2006 06:04:36 AM: > >> When I tried putting a line to test if the code is running, the code > does >> run, but apparently it does not create any elements, here's what I > tested: >> >> System.out.println("This is just testing :" + > g.getAttribute("circleGroup")); >> >> and nothing prints for g.getAttribute ... > > This is expected, I think you want to use: > g.getAttributeNS(null, "id"); > > This should result in the string 'circleGroup'. > >> > [EMAIL PROTECTED] wrote on 03/11/2006 05:44:31 PM: >> > >> >> I did initially try to add the red circles to the svg document >> >> programatically, infact I think you emailed me a snippet of your code >> >> but it doesn't work, the code compiles but does not display the >> >> red-circles, I tried to repaint my canvas, that don't work... here's >> >> the code I'm using maybe you might be able to spot where I'm making >> >> the error... >> > >> > The code looks pretty good. You aren't that far from a >> > standalone example, this would help me help you... >> > >> >> //I added this in my constructor >> >> canvas.setDocumentState(JSVGCanvas.ALWAYS_DYNAMIC); >> > >> > This must be done _before_ you set the document on the canvas. >> > >> >> //The following code I added in my ActionListener triggred by a > button >> > >> > Are you sure this code runs? Some println's might help make sure >> > that your spots list isn't empty for some reason, etc. You don't >> > need to 'repaint' the canvas. >> > >> >> canvas.getUpdateManager().getUpdateRunnableQueue().invokeLater(new >> >> Runnable() { >> >> >> >> public void run() >> >> { >> >> SVGDocument doc = canvas.getSVGDocument(); >> >> String SVGNS = "http://www.w3.org/2000/svg"; >> >> Iterator i = spots.iterator(); >> >> Element g = > doc.getElementById("circleGroup"); >> >> if (g == null) >> >> { >> >> g = doc.createElementNS(SVGNS,"g"); >> >> g.setAttributeNS(null, "id", > "circleGroup"); >> >> doc.getRootElement().appendChild(g); >> >> } >> >> >> >> >> >> while (i.hasNext()) >> >> { >> >> Point2D pt2d = (Point2D) i.next(); >> >> Element e = >> > doc.createElementNS(SVGNS,"circle"); >> >> e.setAttributeNS(null,"cx",""+pt2d.getX()); >> >> e.setAttributeNS(null,"cy",""+pt2d.getY()); >> >> e.setAttributeNS(null,"r","8"); >> >> e.setAttributeNS(null,"fill","Red"); >> >> g.appendChild(e); >> >> } >> >> } >> >> }); >> >> >> >> canvas.repaint(); >> > >> > >> > --------------------------------------------------------------------- >> > To unsubscribe, e-mail: [EMAIL PROTECTED] >> > For additional commands, e-mail: > [EMAIL PROTECTED] >> > >> > >> > >> >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
