Hi Thomas,

Thank U very much....every thing is workin fine...But for few files after
serializing if i try to create svgdom using SAXSVGDocumentFactory's
createSVGDoucment() method it giving some java.io.UTFDataFomatException...

For serializing i used the below code


                        OutputFormat format = new 
OutputFormat(document,"UTF-8",false);
                        
                        String encoding = format.getEncoding();
                        
                        System.out.println("Encoding is : " + encoding);
                        format.setLineSeparator(LineSeparator.Windows);
                        format.setIndenting(true);
                        format.setLineWidth(0);             
                        format.setPreserveSpace(true);
                        XMLSerializer serializer = new XMLSerializer (
                            new FileWriter("C:/Documents and
Settings/ic00t115/Desktop/Generated/Testing.svg"), format);
                        serializer.asDOMSerializer();
                        serializer.serialize(document);

The exception was ...
java.io.UTFDataFormatException: Invalid byte 1 of 1-byte UTF-8 sequence.
        at org.apache.xerces.impl.io.UTF8Reader.invalidByte(Unknown Source)
        at org.apache.xerces.impl.io.UTF8Reader.read(Unknown Source)
        at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source)
        at org.apache.xerces.impl.XMLEntityScanner.skipChar(Unknown Source)
        at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
Source)
        at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown
Source)
        at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
        at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
        at
org.apache.batik.dom.util.SAXDocumentFactory.createDocument(Unknown Source)
        at
org.apache.batik.dom.util.SAXDocumentFactory.createDocument(Unknown Source)
        at
org.apache.batik.dom.svg.SAXSVGDocumentFactory.createDocument(Unknown
Source)
        at
org.apache.batik.dom.svg.SAXSVGDocumentFactory.createSVGDocument(Unknown
Source)
This is not happening for all the files but for some large files....

Thanks for ur great support

Regard 
Prad

thomas.deweese wrote:
> 
> Hi Prad,
> 
> prad <[EMAIL PROTECTED]> wrote on 08/23/2006 01:47:47 AM:
> 
>> Idea is good..I tried it out.Am getting one problem ie after replacing 
> new
>> element with different namespace and serialize the dom to xml....new xml
>> file is taking the  global namespace ie"http://www.w3.org/2000/svg"; 
> instead
>> of "http://myNameSpace.org"......Any idea about where i might be wrong
> 
>    You need to declare and use a new namespace prefix for the element.
> 
>          String XMLNS_NAMESPACE_URI = "http://www.w3.org/2000/xmlns/";;
> 
>            // Declare the new namespace prefix (for serialization)
>            Element root    = doc.getRootElement();
>            root.setAttributeNS(XMLNS_NAMESPACE_URI, "xmlns:myNS", 
> newNamespace);
> 
>            // Use the new namespace prefix in the document.
>          Element newElem = doc.createElementNS(newNamespace, 
>  "myNS:"+problem.getLocalName());
> 
>> thomas.deweese wrote:
>> > 
>> > Hi Prad,
>> > 
>> >      Do not send the same message multiple times to the list.
>> > 
>> > prad <[EMAIL PROTECTED]> wrote on 08/22/2006 03:20:03 AM:
>> > 
>> >> Now i have decided to parse svg file as simple xml dom and change the
>> >> namespace of few elements and then use this modified file to create
>> >> SVGDOM.......does it works....if yes,
>> > 
>> >    Yes, this will work.  Since you are supposed to ignore the 
>> > elements you could also remove them (this is simpler).
>> > 
>> >> how do i change or move elements to different namespace...
>> > 
>> >    I would suggest using the following to locate the problem elements: 
> 
>> >         Element.getElementsByTagNameNS(String namespace, String 
> tagName)
>> > 
>> >    Then the simplest thing to do is remove them from the DOM:
>> > 
>> >         Element problem = nodeList.get(i);
>> >         problem.getParentNode().removeChild(problem);
>> > 
>> >    Moving them to another namespace is a little tricker.  First
>> > you need to create a new element in the new namespace:
>> > 
>> >         Element newElem = doc.createElementNS(newNamespace, 
>> > problem.getTagName());
>> >         // Then copy the attributes from the problem node to the new 
> node.
>> >         NamedNodeMap nnm = problem.getAttributes();
>> >         int len = nnm.getLength();
>> >         for (int i=0; i<len; i++) {
>> >                 Attr a = (Attr)nnm.get(i);
>> >                 Attr newAttr = (Attr)doc.importNode(a, true);
>> >                 newElem.setAttributeNode(newAttr);
>> >         }
>> > 
>> >         Then you need to replace the problem element with the
>> > new Element:
>> > 
>> >         problem.getParentNode().replaceChild(newElem, problem);
>> > 
>> >         This get's a bit more complex if the elements that need to
>> > be moved may have children that also need to be moved... You basically
>> > need to walk the problem element's children running the above code
>> > on each of them an appending them to 'newElem'.
>> > 
>> >    (The above is untested 'psuedo code')
>> >    Good luck!
>> > 
>> >> thomas.deweese wrote:
>> >> > 
>> >> > Hi Prad,
>> >> > 
>> >> > prad <[EMAIL PROTECTED]> wrote on 08/18/2006 02:15:56 AM:
>> >> > 
>> >> >> Thanks for the suggestion,but am not supposed to change svg file 
> or 
>> >> > change
>> >> >> namespace wat i have to do is to handle such elements by ignoring 
>> > them
>> >> > 
>> >> >     I will _very_ strong recommend that you fix the files.
>> >> > Changing tools to work around broken files is 100% always the
>> >> > wrong answer to the problem.
>> >> > 
>> >> >     That said you can try creating a subclass of 
>> >> > batik.dom.svg.SVGDOMImplementation that replaces the 
>> >> > createElement & createElementNS methods. 
>> >> > 
>> >> >     This is about all the help I'll give on this topic
>> >> > as I consider this the totally wrong way to approach 
>> >> > the problem.
>> >> > 
>> >> >     Good luck!
>> >> > 
>> >> >> thomas.deweese wrote:
>> >> >> > 
>> >> >> > Hi Prad,
>> >> >> > 
>> >> >> > prad <[EMAIL PROTECTED]> wrote on 08/17/2006 06:06:13 AM:
>> >> >> > 
>> >> >> >> Am finding difficult to get the dom for a svg file. 
>> >> >> > 
>> >> >> >    Actually it looks like you are getting DOM fine for
>> >> >> > SVG files.  It is files that look a little like an
>> >> >> > SVG file but aren't that causing you problems (as they should).
>> >> >> > 
>> >> >> >> But If the svg file contains other tags like
>> >> >> > 
>> >> >> >    This is not a valid SVG file:
>> >> >> >> <svg>
>> >> >> >>     <segments>
>> >> >> >>    </segments>
>> >> >> > 
>> >> >> >    I suggest you fix it by moving the non-SVG elements 
>> >> >> > out of the SVG namespace:
>> >> >> >    <svg xmlns:prad="http://prad.org/";>
>> >> >> >         <prad:segments>
>> >> >> >         </prad:segments>
>> >> >> >    </svg>
>> >> >> > 
>> >> >> > 
>> >> >> > 
>> > ---------------------------------------------------------------------
>> >> >> > To unsubscribe, e-mail: 
>> > [EMAIL PROTECTED]
>> >> >> > For additional commands, e-mail: 
>> >> > [EMAIL PROTECTED]
>> >> >> > 
>> >> >> > 
>> >> >> > 
>> >> >> 
>> >> >> -- 
>> >> >> View this message in context: 
>> >> > http://www.nabble.com/getting-dom-from-svg-file-
>> >> >> tf2120596.html#a5860806
>> >> >> Sent from the Batik - Users forum at Nabble.com.
>> >> >> 
>> >> >> 
>> >> >> 
> ---------------------------------------------------------------------
>> >> >> 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]
>> >> > 
>> >> > 
>> >> > 
>> >> 
>> >> -- 
>> >> View this message in context: 
>> > http://www.nabble.com/getting-dom-from-svg-file-
>> >> tf2120596.html#a5920621
>> >> Sent from the Batik - Users forum at Nabble.com.
>> >> 
>> >> 
>> >> ---------------------------------------------------------------------
>> >> 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]
>> > 
>> > 
>> > 
>> 
>> -- 
>> View this message in context: 
> http://www.nabble.com/getting-dom-from-svg-file-
>> tf2120596.html#a5938589
>> Sent from the Batik - Users forum at Nabble.com.
>> 
>> 
>> ---------------------------------------------------------------------
>> 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]
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/getting-dom-from-svg-file-tf2120596.html#a5959014
Sent from the Batik - Users forum at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to