Parsing Special Charcters in XML File like & ,'

HI my xml is like this
<?xml version="1.0" encoding="UTF-8" ?>
<contact-info>
<name>Jane Smith</name>
<company>AT & T</company>
<phone>(212) 555-4567</phone>
</contact-info>
how can i parse it as the & symbol is there in AT & T text .
Need some Java code to replace all kind of special characters

So the parser is giving you a message saying that the XML is not well-formed? Then you should contact the person who gave you that XML document. Tell them that is isn't well-formed (and that they should escape ampersands correctly).
It's not your responsibility to parse any old garbage that somebody sends you. It's their responsibility to send you well-formed XML.

Similar Messages

  • How do you make Xerces parser generate doctype to XML-file?

    When I use javacode (with xerces parser) to update an XML-file the doctype-line disappears!!!!
    Anyone how knows how to solve this problem????
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE test SYSTEM "StatisticStandard.dtd"> <---- This is the line I want to keep!!!
    <test>
    <totalanswered>5</totalanswered>
    <set>
    <alt>1</alt>
    </set>
    </test>

    Hi!
    I found a sort of solution to my problem. I don't think it is the best, but it works!
    Where you write to file you add this line (look for the arrow).
    (I use the javax.xml.transform package)
    Source xmlSource = new DOMSource(document);
    Result result = new StreamResult(
    new FileOutputStream(path+file));
    TransformerFactory transformerFactory = TransformerFactory.newInstance();
    Transformer transformer = transformerFactory.newTransformer();
    transformer.setOutputProperty(javax.xml.transform.OutputKeys.DOCTYPE_SYSTEM, "dtdfilename.dtd"); <-- This one does the trick!!!
    transformer.transform(xmlSource, result);
    Anette :)

  • Parser dimension ACCOUNT's xml file error.

    Hi friends,
    i manully uploading master data in ACCOUNT dimension.
    what i did here, i manually added PARENTH1hierarchy and i changed that column position infront of "ACCTYPE" property. While pasting i might paste on ACCTYPE property & processed ACCOUNT dim.So it gone and disturbed underlying XML file. I checked 3 files XLS,XLT and XML files in UJFS. But XLS & XLT doesn't have ACCTYPE property. So how can i put it back? Any suggestions pls.
    Eventhough ACCTYPE dim property defined and existed(under maintain dim property of ACCOUNT dim). when i try to check maintain members data for manually entering data, it not available in columns. when i try to process ACCOUT dim, system saying below error message. 
    Parser dimension ACCOUNT's xml file error.
    How to correct this error.?
    Thanks,
    Naresh
    Edited by: Naresh P on Jan 13, 2011 7:20 AM

    Hi,
    It will be better to delete the XML file from UJFS and process your dimension once again. However, it might happen that you are still unable to edit the membersheet. In that case, it will be advisable to take a backup of the member sheet and recreate the same member sheet once again.
    Hope this helps.

  • HO w to use SAX parser to create an XML file on the fly

    Hi All,
    Currently I am using the DOM parser to create an XML file from a text file. But as the DOM takes much memory and inefficient, I need to convert the DOM translator to SAX translator. Can I do that ?? If YES then how to go about that and if NO then what may be the workaround for that.
    Please help me out
    Thanx in advance
    kaushik

    Incidentally, look at this thread:
    http://forum.java.sun.com/thread.jsp?forum=34&thread=252415
    It has an example of how to transform an XML file via XSLT. If you change this to use the zero-argument form of newTransformer, it will apply the "identity transformation" to your input, thus outputting your XML in valid form. Now you just need to figure out how to provide SAX input to this, and the JAXP download includes an example of that.

  • PARSING HTML ELEMNETS IN XML FILE?,Help please very urgent

    I am getting the input in this form
    <ul>
    <li>Strategies</li>
    <li>Planning</li>
    <li>Value</li>
    <li>Total Investment</li>
    </ul>
    I want to convert it into below format so that ContentHandler parse the HTML tages.The HTML elements are dynamic,
    contentHandler.startElement("", "ul", "ul", attrs);
    contentHandler.startElement("", "li", "li", attrs);
    contentHandler.characters(value.toCharArray(), 0, value.length());
    contentHandler.startElement("", "li", "li", attrs);
    contentHandler.startElement("", "li", "li", attrs);
    contentHandler.characters(value.toCharArray(), 0, value.length());
    contentHandler.startElement("", "li", "li", attrs);
    contentHandler.startElement("", "li", "li", attrs);
    contentHandler.characters(value.toCharArray(), 0, value.length());
    contentHandler.startElement("", "li", "li", attrs);
    contentHandler.startElement("", "li", "li", attrs);
    contentHandler.characters(value.toCharArray(), 0, value.length());
    contentHandler.startElement("", "li", "li", attrs);
    contentHandler.endElement("", "ul", "ul");
    Is their any library through which we can convert HTML tags into ContentHandler elements.
    Thanks in Advance
    Thanks
    Lakhi

    Actually i am parsing XML file,but i have HTML elements inside XML elements:
    <section id='2'><header><line>Agenda( Slide2 )</line></header>
    <line>
    <h3>Agenda</h3>
    <ol>
    <li>Overview of ABC Company inc.</li>
    <li>Defining and Measuring Employee Engagement</li>
    <li>Foresight's Survey Methodology</li>
    <li>Online Tools</li>
    <li>Standard and Custom Reporting Capabilities</li>
    <li>Action Planning and Best Practices</li>
    </ol></line></section>
    And i am using Contenthandler interface to parse,
              attrs.addCDATAAttribute("id",""+i);
                   contentHandler.startElement("", "section", "section", attrs);
                   attrs.clear();
                   contentHandler.startElement("", "header", "header", attrs);
                   contentHandler.startElement("", "line", "line", attrs);
                   contentHandler.characters(key.toCharArray(), 0, key.length());
                   contentHandler.endElement("", "line", "line");
                   contentHandler.endElement("", "header", "header");
                   contentHandler.startElement("", "line", "line", attrs);
    /*HERE I need to Generate java instruction for HTML elements as i mailed before.for elements like <li>Overview of ABC Company inc.</li>
    <li>Defining and Measuring Employee Engagement</li>...................</ol>
                   contentHandler.characters(value.toCharArray(), 0, value.length());
                   contentHandler.endElement("", "line", "line");
                   contentHandler.endElement("", "section", "section");

  • SQL*Loader problem - not efficient, parsing error for big xml files

    Hi Experts,
    First of all, I would like to store xml files in object relation way. Therefore I created a schema and a table for it (see above).
    I wants to propagate it (by using generated xml files), hence I created a control file for sql loader (see above).
    I have two problems for it.
    1, It takes a lot of time. It means I can upload a ~80MB file in 2 hours and a half.
    2, At bigger files, I got the following error messages (OCI-31011: XML parsing failed OCI-19202: Error occurred in XML processing LPX-00243: element attribute value must be enclosed in quotes). It is quite interesting because my xml file is generated and I could generated and uploaded the first and second half of the file.
    Can you help me to solve these problems?
    Thanks,
    Adam
    Control file
    UNRECOVERABLE
    LOAD DATA
    CHARACTERSET UTF8
    INFILE *
    APPEND
    INTO TABLE coll_xml_objrel
    XMLTYPE(xml)
    FIELDS
    ident constant 2
    ,file_name filler char(100)
    ,xml LOBFILE (file_name) TERMINATED BY EOF
    BEGINDATA
    generated1000x10000.xml
    Sql Loader command
    sqlldr.exe username/password@//localhost:1521/SID control='loader.ctl' log='loadr.log' direct=true
    Schema
    <?xml version="1.0" encoding="UTF-8"?>
    <schema targetNamespace="http://www.something.com/shema/simple_searches" elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.something.com/shema/simple_searches">
        <element name="searches" type="tns:searches_type"></element>
        <element name="search" type="tns:search_type"></element>
        <element name="results" type="tns:results_type"></element>
        <element name="result" type="tns:result_type"></element>
        <complexType name="searches_type">
            <sequence>
                <element ref="tns:search" maxOccurs="unbounded"></element>
            </sequence>
        </complexType>
        <complexType name="search_type">
            <sequence>
                <element ref="tns:results"></element>
            </sequence>
            <attribute ref="tns:id" use="required"></attribute>
            <attribute ref="tns:type" use="required"></attribute>
        </complexType>
        <complexType name="results_type">
            <sequence maxOccurs="unbounded">
                <element ref="tns:result"></element>
            </sequence>
        </complexType>
        <complexType name="result_type">
            <attribute ref="tns:id" use="required"></attribute>
        </complexType>
        <simpleType name="type_type">
            <restriction base="string">
                <enumeration value="value1"></enumeration>
                <enumeration value="value2"></enumeration>
            </restriction>
        </simpleType>
        <attribute name="type" type="tns:type_type"></attribute>
        <attribute name="id" type="string"></attribute>
    </schema>
    Create table
    create table coll_xml_objrel
    ident Number(20) primary key,
    xml xmltype)
    Xmltype column xml
    store as object relational
    xmlschema "http://www.something.com/schema/simple_searches.xsd"
    Element "searches";

    Hi Odie_63,
    Thanks for your answer.
    I will post this question in the XML DB forum too (edit: I realized that you have done it. Thanks for it).
    1, Version: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
    2, see above
    3, I have registered my schema with using dbms_xmlschema.registerSchema function.
    Cheers,
    Adam
    XML generator:
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import javax.xml.stream.XMLOutputFactory;
    import javax.xml.stream.XMLStreamException;
    import javax.xml.stream.XMLStreamWriter;
    public class mainGenerator {
        public static void main(String[] args) throws FileNotFoundException, XMLStreamException {
            // TODO Auto-generated method stub
            final long numberOfSearches = 500;
            final long numberOfResults = 10000;
            XMLOutputFactory xof = XMLOutputFactory.newFactory();
            XMLStreamWriter writer = xof.createXMLStreamWriter(new FileOutputStream("C:\\Working\\generated500x10000.xml"));
            writer.writeStartDocument();
            writer.writeStartElement("tns","searches", "http://www.something.com/schema/simple_searches");
            writer.writeNamespace("tns", "http://www.something.com/schema/simple_searches");
            for (long i = 0; i < numberOfSearches; i++){
                Long help = new Long(i);
                writer.writeStartElement("tns","search", "http://www.something.com/schema/simple_searches);
                writer.writeAttribute("tns", "http://www.something.com/schema/simple_searches", "type", "value1");
                writer.writeAttribute("tns", "http://www.something.com/schema/simple_searches", "id", help.toString());
                writer.writeStartElement("tns","results", "http://www.something.com/schema/simple_searches");
                for (long j = 0; j < numberOfResults; j++){
                    writer.writeStartElement("tns","result", "http://www.something.com/schema/simple_searches");
                    Long helper = new Long(i*numberOfResults+j);
                    writer.writeAttribute("tns", "http://www.something.com/schema/simple_searches", "id", helper.toString());
                    writer.writeEndElement();
                writer.writeEndElement();
                writer.writeEndElement();
            writer.writeEndElement();
            writer.writeEndDocument();
            writer.close();
    registerSchema:
    begin
    dbms_xmlschema.registerSchema(
    'http://www.something.com/schema/simple_searches',
    '<?xml version="1.0" encoding="UTF-8"?>
    <schema targetNamespace="http://www.something.com/schema/simple_searches" elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.something.com/schema/simple_searches">
        <element name="searches" type="tns:searches_type"></element>
        <element name="search" type="tns:search_type"></element>
        <element name="results" type="tns:results_type"></element>
        <element name="result" type="tns:result_type"></element>
        <complexType name="searches_type">
            <sequence>
                <element ref="tns:search" maxOccurs="unbounded"></element>
            </sequence>
        </complexType>
        <complexType name="search_type">
            <sequence>
                <element ref="tns:results"></element>
            </sequence>
            <attribute ref="tns:id" use="required"></attribute>
            <attribute ref="tns:type" use="required"></attribute>
        </complexType>
        <complexType name="results_type">
            <sequence maxOccurs="unbounded">
                <element ref="tns:result"></element>
            </sequence>
        </complexType>
        <complexType name="result_type">
            <attribute ref="tns:id" use="required"></attribute>
        </complexType>
        <simpleType name="type_type">
            <restriction base="string">
                <enumeration value="value1"></enumeration>
                <enumeration value="value2"></enumeration>
            </restriction>
        </simpleType>
        <attribute name="type" type="tns:type_type"></attribute>
        <attribute name="id" type="string"></attribute>
    </schema>',
    TRUE, TRUE, FALSE, FALSE);
    end

  • Approach to parse large number of XML files into the relational table.

    We are exploring the option of XML DB for processing a large number of files coming same day.
    The objective is to parse the XML file and store in multiple relational tables. Once in relational table we do not care about the XML file.
    The file can not be stored on the file server and need to be stored in a table before parsing due to security issues. A third party system will send the file and will store it in the XML DB.
    File size can be between 1MB to 50MB and high performance is very much expected other wise the solution will be tossed.
    Although we do not have XSD, the XML file is well structured. We are on 11g Release 2.
    Based on the reading this is what my approach.
    1. CREATE TABLE XML_DATA
    (xml_col XMLTYPE)
    XMLTYPE xml_col STORE AS SECUREFILE BINARY XML;
    2. Third party will store the data in XML_DATA table.
    3. Create XMLINDEX on the unique XML element
    4. Create views on XMLTYPE
    CREATE OR REPLACE FORCE VIEW V_XML_DATA(
       Stype,
       Mtype,
       MNAME,
       OIDT
    AS
       SELECT x."Stype",
              x."Mtype",
              x."Mname",
              x."OIDT"
       FROM   data_table t,
              XMLTABLE (
                 '/SectionMain'
                 PASSING t.data
                 COLUMNS Stype VARCHAR2 (30) PATH 'Stype',
                         Mtype VARCHAR2 (3) PATH 'Mtype',
                         MNAME VARCHAR2 (30) PATH 'MNAME',
                         OIDT VARCHAR2 (30) PATH 'OID') x;
    5. Bulk load the parse data in the staging table based on the index column.
    Please comment on the above approach any suggestion that can improve the performance.
    Thanks
    AnuragT

    Thanks for your response. It givies more confidence.
    Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
    TNS for Linux: Version 11.2.0.3.0 - Production
    Example XML
    <SectionMain>
    <SectionState>Closed</SectionState>
    <FunctionalState>CP FINISHED</FunctionalState>
    <CreatedTime>2012-08</CreatedTime>
    <Number>106</Number>
    <SectionType>Reel</SectionType>
    <MachineType>CP</MachineType>
    <MachineName>CP_225</MachineName>
    <OID>99dd48cf-fd1b-46cf-9983-0026c04963d2</OID>
    </SectionMain>
    <SectionEvent>
    <SectionOID>99dd48cf-2</SectionOID>
    <EventName>CP.CP_225.Shredder</EventName>
    <OID>b3dd48cf-532d-4126-92d2</OID>
    </SectionEvent>
    <SectionAddData>
    <SectionOID>99dd48cf2</SectionOID>
    <AttributeName>ReelVersion</AttributeName>
    <AttributeValue>4</AttributeValue>
    <OID>b3dd48cf</OID>
    </SectionAddData>
    - <SectionAddData>
    <SectionOID>99dd48cf-fd1b-46cf-9983</SectionOID>
    <AttributeName>ReelNr</AttributeName>
    <AttributeValue>38</AttributeValue>
    <OID>b3dd48cf</OID>
    <BNCounter>
    <SectionID>99dd48cf-fd1b-46cf-9983-0026c04963d2</SectionID>
    <Run>CPFirstRun</Run>
    <SortingClass>84</SortingClass>
    <OutputStacker>D2</OutputStacker>
    <BNCounter>54605</BNCounter>
    </BNCounter>
    I was not aware of Virtual column but looks like we can use it and avoid creating views by just inserting directly into
    the staging table using virtual column.
    Suppose OID id is the unique identifier of each XML FILE and I created virtual column
    CREATE TABLE po_Virtual OF XMLTYPE
    XMLTYPE STORE AS BINARY XML
    VIRTUAL COLUMNS
    (OID_1 AS (XMLCAST(XMLQUERY('/SectionMain/OID'
    PASSING OBJECT_VALUE RETURNING CONTENT)
    AS VARCHAR2(30))));
    1. My question is how then I will write this query by NOT USING COLMUN XML_COL
    SELECT x."SECTIONTYPE",
    x."MACHINETYPE",
    x."MACHINENAME",
    x."OIDT"
    FROM po_Virtual t,
    XMLTABLE (
    '/SectionMain'
    PASSING t.xml_col                          <--WHAT WILL PASSING HERE SINCE NO XML_COL
    COLUMNS SectionType VARCHAR2 (30) PATH 'SectionType',
    MachineType VARCHAR2 (3) PATH 'MachineType',
    MachineName VARCHAR2 (30) PATH 'MachineName',
    OIDT VARCHAR2 (30) PATH 'OID') x;
    2. Insetead of creating the view then Can I do
    insert into STAGING_table_yyy ( col1 ,col2,col3,col4,
    SELECT x."SECTIONTYPE",
    x."MACHINETYPE",
    x."MACHINENAME",
    x."OIDT"
    FROM xml_data t,
    XMLTABLE (
    '/SectionMain'
    PASSING t.xml_col                         <--WHAT WILL PASSING HERE SINCE NO XML_COL
    COLUMNS SectionType VARCHAR2 (30) PATH 'SectionType',
    MachineType VARCHAR2 (3) PATH 'MachineType',
    MachineName VARCHAR2 (30) PATH 'MachineName',
    OIDT VARCHAR2 (30) PATH 'OID') x
    where oid_1 = '99dd48cf-fd1b-46cf-9983';<--VIRTUAL COLUMN
    insert into STAGING_table_yyy ( col1 ,col2,col3
    SELECT x."SectionOID",
    x."EventName",
    x."OIDT"
    FROM xml_data t,
    XMLTABLE (
    '/SectionMain'
    PASSING t.xml_col                         <--WHAT WILL PASSING HERE SINCE NO XML_COL
    COLUMNS SectionOID PATH 'SectionOID',
    EventName VARCHAR2 (30) PATH 'EventName',
    OID VARCHAR2 (30) PATH 'OID',
    ) x
    where oid_1 = '99dd48cf-fd1b-46cf-9983';<--VIRTUAL COLUMN
    Same insert for other tables usind the OID_1 virtual coulmn
    3. Finaly Once done how can I delete the XML document from XML.
    If I am using virtual column then I beleive it will be easy
    DELETE table po_Virtual where oid_1 = '99dd48cf-fd1b-46cf-9983';
    But in case we can not use the Virtual column how we can delete the data
    Thanks in advance
    AnuragT

  • When parsing a large size xml file , OutOfMemorry exception(attach code)

    Dear all ,
    I met a OutOfMemorry exception when I parse a xml file (20M) in my application(I extract data in xml file for building my application data), but I found that it take long time(for 2 more minutes) even just searching the xml file , because my application is viewed by web page , so it's too bad for waiting.
    what I used is org.jdom.input.SAXBuilder(jdom1.0beta8-dev) , and my xml file structure is like :
    <errors>
    <item1>content</item1>
    <item2>content</item2>
    </errors>
    and this is my source code of parsing xml file :
    import java.io.*;
    import java.text.*;
    import java.util.*;
    import org.jdom.*;
    import org.jdom.input.*;
    import org.jdom.output.*;
    public class XMLProperties {
        private File file;
        private Document doc;
        private Map propertyCache = new HashMap();
        public XMLProperties(String filename) {
                SAXBuilder builder = new SAXBuilder();
                // Strip formatting
                DataUnformatFilter format = new DataUnformatFilter();
                builder.setXMLFilter(format);
                long time_start = System.currentTimeMillis();
                Runtime run = Runtime.getRuntime();
                doc = builder.build(new File(filename));
                System.out.println("Build doc memory ="+(run.totalMemory()-
                         run.freeMemory())/1024+"K");
                System.out.println("Build doc used time :"+(
                         System.currentTimeMillis()-time_start)/1000+" s");
            catch (Exception e) {
                System.err.println("Error creating XML parser in "
                    + "PropertyManager.java");
                e.printStackTrace();
         public String [] getChildrenProperties(String parent) {
            // Search for this property by traversing down the XML heirarchy.
            Element element = doc.getRootElement();
            element = element.getChild(parent);
            if (element == null) {
                // This node doesn't match this part of the property name which
                // indicates this property doesn't exist so return empty array.
                return new String [] { };
            // We found matching property, return names of children.
            List children = element.getChildren();
            int childCount = children.size();
            String [] childrenNames = new String[childCount];
            for (int i=0; i<childCount; i++) {
                childrenNames[i] = ((Element)children.get(i)).getName();
            return childrenNames;
        }the test main class:
    import java.util.Map;
    import java.util.HashMap;
    import org.jdom.*;
    import org.jdom.input.*;
    public class MyTest {
      public static void main(String[] args) {
        long time_start = System.currentTimeMillis();
        Runtime run = Runtime.getRuntime();
        Map childs = new HashMap();
        System.out.println("Used memory before="+(run.totalMemory()-run.freeMemory())/1024 + "K");
        XMLProperties parser = new XMLProperties("D:\\projects\\edr\\jsp\\status-data\\edr-status-2003-09-01.xml");
        String[] child = parser.getChildrenProperties("errors");
        for(int i=0;i<child.length;i++) {
    //      childs.put(new Integer(i), child);
    if(i%1000 == 0) {
    System.out.println("Used memory while="+(run.totalMemory()-run.freeMemory()/1024+"K"));
    System.out.println("child.length="+child.length);
    System.out.println("Used memory after="+(run.totalMemory()-run.freeMemory())/1024+"K");
    System.out.println("Time used: "+(System.currentTimeMillis()-time_start)/1000+"s");
    The result is : Used memory before=139K
    Used memory while=56963K
    Used memory after=51442K
    child.length=27343
    Time used: 146s
    is that some way to solve this problem ?
    Thanks for your help

    I met a OutOfMemorry exception when I parse a xml
    l file (20M) in my application(I extract data in xml
    file for building my application data)...Rule of thumb for parsing XML: the memory you need is about 10 times the size of the XML file. So in your case you need 200 MB of free memory.
    , but I found
    that it take long time(for 2 more minutes) even just
    searching the xml file , because my application is
    viewed by web page...Then you need to redesign your application. Parsing 20 megabytes of XML for every request is -- as you can see -- impractical. Sorry I can't suggest how, since I have no idea what your application is.

  • Problems with parsing and display a XML-File

    Hi,
    I'm working on an applet to read a XML-file, display the content in a JTree, in order to modify and save it again. I found this tutorial: http://java.sun.com/webservices/jaxp/dist/1.1/docs/tutorial/dom/index.html
    I took this example http://java.sun.com/webservices/jaxp/dist/1.1/docs/tutorial/dom/work/DomEcho02.java and modified it, to run it as an applet.
    I changed the method main into:
    public class EditorTest extends JApplet {
    public void init(){
         DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
         try {
              DocumentBuilder builder = factory.newDocumentBuilder();
              File file = new File("/path/inhalt.xml");
              document = builder.parse(file);
         } catch (SAXException sxe) {
              // Error generated during parsing)
              Exception     x = sxe;
              if (sxe.getException() != null)
                   x = sxe.getException();
              x.printStackTrace();
         catch (ParserConfigurationException pce) {
              // Parser with specified options can't be built
              pce.printStackTrace();
         } catch (IOException ioe) {
              // I/O error
              ioe.printStackTrace();
         makeWindow(); //equals makeFrame(); in the tutorial
    } //initThe method makeWindow() looks like this:
    private Container container;
    private void makeWindow(){
         container = getContentPane();
         JDesktopPane desktop = new JDesktopPane();
         final EditorTest echoPanel = new EditorTest();
         JMenuBar menuBar = MakeMenuBar();  //returns a JMenuBar with a few items in it
         container.add(menuBar, BorderLayout.NORTH);
    }The constructor:
    public DomEcho02() {
         // Set up the tree
         JTree tree = new JTree(new DomToTreeModelAdapter());
         // Build left-side view
         JScrollPane treeView = new JScrollPane(tree);
         treeView.setPreferredSize( new Dimension( leftWidth, windowHeight ));
         // Build right-side view
         final JEditorPane htmlPane = new JEditorPane("text/html","");
         htmlPane.setEditable(true);
         JScrollPane htmlView = new JScrollPane(htmlPane);
         htmlView.setPreferredSize(new Dimension( rightWidth, windowHeight ));
         // Build split-pane view
         JSplitPane splitPane = new JSplitPane( JSplitPane.HORIZONTAL_SPLIT, treeView, htmlView );
         splitPane.setContinuousLayout( true );
         splitPane.setDividerLocation( leftWidth );
         splitPane.setPreferredSize( new Dimension( windowWidth + 10, windowHeight+10 ));
         // Add GUI components
         this.setLayout(new BorderLayout());
         this.add("Center", splitPane );
    } // ConstructorI didn't change the class AdapterNode and DomToTreeModelAdapter. When I change the line "JTree tree = new JTree(new DomToTreeModelAdapter());" into "JTree tree = new JTree();", the applet starts and display a standard-JTree, as it ist generated by the constructor. If I want to display my own Tree the applet fails. When I start it with the appletviewer I get this message:
    java.lang.NullPointerException
    at DomEcho02$AdapterNode.childCount(DomEcho02.java:151)
    at DomEcho02$DomToTreeModelAdapter.isLeaf(DomEcho02.java:167)
    at javax.swing.JTree.setModel(JTree.java:704)
    at javax.swing.JTree.<init>(JTree.java:511)
    at DomEcho02.<init>(DomEcho02.java:51)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
    at java.lang.Class.newInstance0(Class.java:350)
    at java.lang.Class.newInstance(Class.java:303)
    at sun.applet.AppletPanel.createApplet(AppletPanel.java:721)
    at sun.applet.AppletPanel.runLoader(AppletPanel.java:650)
    at sun.applet.AppletPanel.run(AppletPanel.java:324)
    at java.lang.Thread.run(Thread.java:595)
    Is there anyone out there, who knows how to fix it?
    Thanks in advance.

    I found out, how it was going wrong.
    When the applet started, it didn't start with the method init(), as it should do, it started with the constructor. Because there was no document the method childCount() throws a exception. After this, the method init() startet reading the file and started the constructor again, but the results were not shown.
    After knowing this I decided to write the Applet again and now it's working fine.

  • Dom can't parse dtd reference in xml file

    Hi all,
    I am trying to parse a xml file (hibernate mapping file *.hbm.xml) using DOM. But itis getting timeout errorwhile parsing due to the external dtd reference in the xml file.
    <!DOCTYPE hibernate-mapping PUBLIC
        "-//Hibernate/Hibernate Mapping DTD//EN"
        "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd" >I understand that the program is trying to access the document and is not being able to do so. But I don't have any clue to solve this problem. I don't want to remove the reference from the xml file.
    The following method is trying to parse the xml file:
    public void parseXML(String file) {
            factory = DocumentBuilderFactory.newInstance();
            System.out.println(file);
             try {
                 builder = factory.newDocumentBuilder();
                 document = builder.parse(file);
                 Element docEle = document.getDocumentElement();
                 NodeList n1 = docEle.getElementsByTagName("class");
                for(int i = 0; i < n1.getLength(); i++) {
                       Element e1 = (Element) n1.item(i);
                       String nm = e1.getAttribute("name");
                     System.out.println(nm);
            } catch(Exception e) {
                throw new RuntimeException(e);
        }Please help me on this....I am at no end....Please let me know if there is any method so that the parser will overlook this reference and will parse the xml file....or any other sort of solution....
    Thanks in advance...
    Anir

    Can you provide a working sample?  Upload to Onedrive and share it with us.
    Matt Small - Microsoft Escalation Engineer - Forum Moderator
    If my reply answers your question, please mark this post as answered.
    NOTE: If I ask for code, please provide something that I can drop directly into a project and run (including XAML), or an actual application project. I'm trying to help a lot of people, so I don't have time to figure out weird snippets with undefined
    objects and unknown namespaces.

  • Parse attributes of a XML file

    Hi My XML file is in the follwoing format
    I have to extract all the autoloadid's at the CFTSContract level
    so my sql output needs to be some thing like this
    AUTOLOADID
    1125
    1126
    1127
    1128
    etc ........
    can any please help me how to right a sql to extract all the autoload id's at the CFTSContract level.
    <?xml version="1.0" encoding="WINDOWS-1252"?>
    <gbi:CFTSBillingRecordList country="ALL" company="ALL" senderId="ISSORCL" installationId="" applicatonId="GBI" cycleNumber="unique number" timeSent="HHMMYY" recordCount="unique number" returnCode="" returnText="" xsi:schemaLocation="http://w3-3.ibm.com/services/cft-s schema/CFTSBillingInterface.xsd" xmlns:gbi="http://w3-3.ibm.com/services/cft-s" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <CFTSContract ContractType="IS" autoloadid="1125" expirationdate="" Division="8F" Area="ISS" ServiceCenter="ISS" customertype="TAX Exempt Flag A or J" Startdate="11-FEB-06" enddate="" ibmAcceptanceDate="11-FEB-06" CustomerSignDate="10-FEB-06" OpportunityNumber="" channelindicator="" competency="BR" businesstransactiontype="1" excemptioncode="10" pocindicator="N" consolidationcustomertype="TAX Exempt Flag A or J" ISSSalesRepName="" ISSSalesRepphone="" paymentmethod="" eposnumber="">
    <CFTSWorknumber servicetype="IC" startdate="11-FEB-06" enddate="11-FEB-07" customertype="TAX Exempt Flag A or J" customercontrol="00" businesstype="IS8F" division="8F" exemptioncode="" opportunitynumber="" eposnumber=""/>
    <CFTSContractAmount billingAmount="0" currencyId="JPY" actionCode="" returnCode=""/>
    </CFTSContract>
    <CFTSContract ContractType="IS" autoloadid="1126" expirationdate="" Division="8F" Area="ISS" ServiceCenter="ISS" customertype="TAX Exempt Flag A or J" Startdate="11-FEB-06" enddate="" ibmAcceptanceDate="11-FEB-06" CustomerSignDate="10-FEB-06" OpportunityNumber="" channelindicator="" competency="BR" businesstransactiontype="1" excemptioncode="10" pocindicator="N" consolidationcustomertype="TAX Exempt Flag A or J" ISSSalesRepName="" ISSSalesRepphone="" paymentmethod="" eposnumber="">
    <CFTSWorknumber servicetype="IC" startdate="11-FEB-06" enddate="11-FEB-07" customertype="TAX Exempt Flag A or J" customercontrol="00" businesstype="IS8F" division="8F" exemptioncode="" opportunitynumber="" eposnumber=""/>
    <CFTSContractAmount billingAmount="0" currencyId="JPY" actionCode="" returnCode=""/>
    </CFTSContract>
    <CFTSContract ContractType="IS" autoloadid="1127" expirationdate="" Division="8F" Area="ISS" ServiceCenter="ISS" customertype="TAX Exempt Flag A or J" Startdate="11-FEB-06" enddate="" ibmAcceptanceDate="11-FEB-06" CustomerSignDate="10-FEB-06" OpportunityNumber="" channelindicator="" competency="BR" businesstransactiontype="1" excemptioncode="10" pocindicator="N" consolidationcustomertype="TAX Exempt Flag A or J" ISSSalesRepName="" ISSSalesRepphone="" paymentmethod="" eposnumber="">
    <CFTSWorknumber servicetype="IC" startdate="11-FEB-06" enddate="" customertype="TAX Exempt Flag A or J" customercontrol="00" businesstype="IS8F" division="8F" exemptioncode="" opportunitynumber="" eposnumber=""/>
    <CFTSWorknumber servicetype="IC" startdate="11-FEB-06" enddate="11-FEB-07" customertype="TAX Exempt Flag A or J" customercontrol="00" businesstype="IS8F" division="8F" exemptioncode="" opportunitynumber="" eposnumber=""/>
    <CFTSContractAmount billingAmount="0" currencyId="JPY" actionCode="" returnCode=""/>
    </CFTSContract>
    <CFTSContract ContractType="IS" autoloadid="1128" expirationdate="" Division="8F" Area="ISS" ServiceCenter="ISS" customertype="TAX Exempt Flag A or J" Startdate="11-FEB-06" enddate="" ibmAcceptanceDate="11-FEB-06" CustomerSignDate="10-FEB-06" OpportunityNumber="" channelindicator="" competency="BR" businesstransactiontype="1" excemptioncode="10" pocindicator="N" consolidationcustomertype="TAX Exempt Flag A or J" ISSSalesRepName="" ISSSalesRepphone="" paymentmethod="" eposnumber="">
    <CFTSWorknumber servicetype="IC" startdate="11-FEB-06" enddate="11-FEB-07" customertype="TAX Exempt Flag A or J" customercontrol="00" businesstype="IS8F" division="8F" exemptioncode="" opportunitynumber="" eposnumber=""/>
    <CFTSContractAmount billingAmount="0" currencyId="JPY" actionCode="" returnCode=""/>
    </CFTSContract>
    <CFTSContract ContractType="IS" autoloadid="1129" expirationdate="" Division="8F" Area="ISS" ServiceCenter="ISS" customertype="TAX Exempt Flag A or J" Startdate="11-FEB-06" enddate="" ibmAcceptanceDate="11-FEB-06" CustomerSignDate="10-FEB-06" OpportunityNumber="" channelindicator="" competency="BR" businesstransactiontype="1" excemptioncode="10" pocindicator="N" consolidationcustomertype="TAX Exempt Flag A or J" ISSSalesRepName="" ISSSalesRepphone="" paymentmethod="" eposnumber="">
    <CFTSWorknumber servicetype="IC" startdate="11-FEB-06" enddate="11-FEB-07" customertype="TAX Exempt Flag A or J" customercontrol="00" businesstype="IS8F" division="8F" exemptioncode="" opportunitynumber="" eposnumber=""/>
    <CFTSWorknumber servicetype="IC" startdate="11-FEB-06" enddate="11-FEB-07" customertype="TAX Exempt Flag A or J" customercontrol="00" businesstype="IS8F" division="8F" exemptioncode="" opportunitynumber="" eposnumber=""/>
    <CFTSContractAmount billingAmount="0" currencyId="JPY" actionCode="" returnCode=""/>
    </CFTSContract>
    </gbi:CFTSBillingRecordList>
    Thanks

    SQL> with t as (select to_clob('<?xml version="1.0" encoding="WINDOWS-1252"?>
      2  <gbi:CFTSBillingRecordList country="ALL" company="ALL" senderId="ISSORCL" installationId="" applicatonId="GBI" cycleNumber="unique number" timeSent="HHMMYY" recordCount="unique number" returnCode="" returnText="" xsi:schemaLocation="http://w3-3.ibm.com/services/cft-s schema/CFTSBillingInterface.xsd" xmlns:gbi="http://w3-3.ibm.com/services/cft-s" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      3  <CFTSContract ContractType="IS" autoloadid="1125" expirationdate="" Division="8F" Area="ISS" ServiceCenter="ISS" customertype="TAX Exempt Flag A or J" Startdate="11-FEB-06" enddate="" ibmAcceptanceDate="11-FEB-06" CustomerSignDate="10-FEB-06" OpportunityNumber="" channelindicator="" competency="BR" businesstransactiontype="1" excemptioncode="10" pocindicator="N" consolidationcustomertype="TAX Exempt Flag A or J" ISSSalesRepName="" ISSSalesRepphone="" paymentmethod="" eposnumber="">
      4  <CFTSWorknumber servicetype="IC" startdate="11-FEB-06" enddate="11-FEB-07" customertype="TAX Exempt Flag A or J" customercontrol="00" businesstype="IS8F" division="8F" exemptioncode="" opportunitynumber="" eposnumber=""/>
      5  <CFTSContractAmount billingAmount="0" currencyId="JPY" actionCode="" returnCode=""/>
      6  </CFTSContract>
      7  <CFTSContract ContractType="IS" autoloadid="1126" expirationdate="" Division="8F" Area="ISS" ServiceCenter="ISS" customertype="TAX Exempt Flag A or J" Startdate="11-FEB-06" enddate="" ibmAcceptanceDate="11-FEB-06" CustomerSignDate="10-FEB-06" OpportunityNumber="" channelindicator="" competency="BR" businesstransactiontype="1" excemptioncode="10" pocindicator="N" consolidationcustomertype="TAX Exempt Flag A or J" ISSSalesRepName="" ISSSalesRepphone="" paymentmethod="" eposnumber="">
      8  <CFTSWorknumber servicetype="IC" startdate="11-FEB-06" enddate="11-FEB-07" customertype="TAX Exempt Flag A or J" customercontrol="00" businesstype="IS8F" division="8F" exemptioncode="" opportunitynumber="" eposnumber=""/>
      9  <CFTSContractAmount billingAmount="0" currencyId="JPY" actionCode="" returnCode=""/>
    10  </CFTSContract>
    11  <CFTSContract ContractType="IS" autoloadid="1127" expirationdate="" Division="8F" Area="ISS" ServiceCenter="ISS" customertype="TAX Exempt Flag A or J" Startdate="11-FEB-06" enddate="" ibmAcceptanceDate="11-FEB-06" CustomerSignDate="10-FEB-06" OpportunityNumber="" channelindicator="" competency="BR" businesstransactiontype="1" excemptioncode="10" pocindicator="N" consolidationcustomertype="TAX Exempt Flag A or J" ISSSalesRepName="" ISSSalesRepphone="" paymentmethod="" eposnumber="">
    12  <CFTSWorknumber servicetype="IC" startdate="11-FEB-06" enddate="" customertype="TAX Exempt Flag A or J" customercontrol="00" businesstype="IS8F" division="8F" exemptioncode="" opportunitynumber="" eposnumber=""/>
    13  <CFTSWorknumber servicetype="IC" startdate="11-FEB-06" enddate="11-FEB-07" customertype="TAX Exempt Flag A or J" customercontrol="00" businesstype="IS8F" division="8F" exemptioncode="" opportunitynumber="" eposnumber=""/>
    14  <CFTSContractAmount billingAmount="0" currencyId="JPY" actionCode="" returnCode=""/>
    15  </CFTSContract>')||
    16  to_clob('<CFTSContract ContractType="IS" autoloadid="1128" expirationdate="" Division="8F" Area="ISS" ServiceCenter="ISS" customertype="TAX Exempt Flag A or J" Startdate="11-FEB-06" enddate="" ibmAcceptanceDate="11-FEB-06" CustomerSignDate="10-FEB-06" OpportunityNumber="" channelindicator="" competency="BR" businesstransactiontype="1" excemptioncode="10" pocindicator="N" consolidationcustomertype="TAX Exempt Flag A or J" ISSSalesRepName="" ISSSalesRepphone="" paymentmethod="" eposnumber="">
    17  <CFTSWorknumber servicetype="IC" startdate="11-FEB-06" enddate="11-FEB-07" customertype="TAX Exempt Flag A or J" customercontrol="00" businesstype="IS8F" division="8F" exemptioncode="" opportunitynumber="" eposnumber=""/>
    18  <CFTSContractAmount billingAmount="0" currencyId="JPY" actionCode="" returnCode=""/>
    19  </CFTSContract>
    20  <CFTSContract ContractType="IS" autoloadid="1129" expirationdate="" Division="8F" Area="ISS" ServiceCenter="ISS" customertype="TAX Exempt Flag A or J" Startdate="11-FEB-06" enddate="" ibmAcceptanceDate="11-FEB-06" CustomerSignDate="10-FEB-06" OpportunityNumber="" channelindicator="" competency="BR" businesstransactiontype="1" excemptioncode="10" pocindicator="N" consolidationcustomertype="TAX Exempt Flag A or J" ISSSalesRepName="" ISSSalesRepphone="" paymentmethod="" eposnumber="">
    21  <CFTSWorknumber servicetype="IC" startdate="11-FEB-06" enddate="11-FEB-07" customertype="TAX Exempt Flag A or J" customercontrol="00" businesstype="IS8F" division="8F" exemptioncode="" opportunitynumber="" eposnumber=""/>
    22  <CFTSWorknumber servicetype="IC" startdate="11-FEB-06" enddate="11-FEB-07" customertype="TAX Exempt Flag A or J" customercontrol="00" businesstype="IS8F" division="8F" exemptioncode="" opportunitynumber="" eposnumber=""/>
    23  <CFTSContractAmount billingAmount="0" currencyId="JPY" actionCode="" returnCode=""/>
    24  </CFTSContract>
    25  </gbi:CFTSBillingRecordList>') str from dual)
    26  --
    27  select extractvalue(column_value,'//@autoloadid') autoloadid from t,table(xmlsequence(extract(xmltype(str),'//CFTSContract')))
    28  /
    AUTOLOADID
    1125
    1126
    1127
    1128
    1129
    SQL>

  • Unwanted / Special Characters in XML File Output

    Hello Seniors,
    I am downloading an XML File which has some code from include's. The XML file is well formatted and the output is fine when I downloaded programs. But this include is from user exits and the code has some commented lines in it also with a blank line in between. Now the problem is that I am getting a "VT" in the XML file which is an unwanted character where there is a blank line in the include "ZXRSAU01". Other than this include, all other includes are downloaded fine.
    Here is the code from the include "ZXRSAU01":
         select single * from knvv where kunnr = l_s_icctrcst-kunnr
                                    and  vkorg = l_s_icctrcst-vkorg
                                    and  vtweg = l_s_icctrcst-vtweg
                                    and  spart = l_s_icctrcst-spart.
    Here is the output in the XML File:
         select single * from knvv where kunnr = l_s_icctrcst-kunnr
                                    and  vkorg = l_s_icctrcst-vkorg VT
                                    and  vtweg = l_s_icctrcst-vtweg
                                    and  spart = l_s_icctrcst-spart.
    Please give me a solutions for this. Each of your answers are very important and will addressed with the best deserved.
    Thanks and regards,
    Chaitanya.

    Hello Madhan,
    Firstly, Thank You for the reply. We cannot remove the space in that include because the system is not the original system. Please let me inform you that this is a 4.6C system. We have used CDATA to get the code as it is onto the XML file. I observed that, firstly, the character "#" has come into the internal table with the read report itself. In the debug I saw it to be "0B" in the binary format, but in the downloaded XML file output, it is displayed as "VT". Please let me know how to get rid of this special/unwanted character.
    Thanks and regards,
    Chaitanya.

  • Parsing Error is struts xml files org.xml.s

    Hello ,
    I am getting a peculiar error while starting the Tomcat , the struts xml files are not being parsed correctly (they used to be before) .I get a parse error when I shut/start the tomcat (at each deployment) and hence due to the error the application fails (I guess ...)
    The errors I get on the log file while starting the tomcat are ...(only part of the error stack)
    parsing error processing resource path /WEB-INF/struts-action.xml
    org.xml.sax.SAXParseException: The processing instruction target matching "[xX][mM][lL]" is not allowed.
    Servlet /ProteinBank threw load() exception
    javax.servlet.UnavailableException: Parsing error processing resource path /WEB-INF/struts-action.xml

    Have you changed your struts-config or web.xml files?
    Back it up, and try starting with a 'minimal' version of struts-config to see if it succeeds.

  • Does the parser work with large XML files?

    Is there a restriction on the XML file size that can be loaded into the parser?
    I am getting a out of memory exception reading in large XML file(10MB) using the commands
    DOMParser parser = new DOMParser();
    URL url = createURL(argv[0]);
    parser.setErrorStream(System.err);
    parser.setValidationMode(true);
    parser.showWarnings(true);
    parser.parse(url);
    Win NT 4.0 Server
    Sun JDK 1.2.2
    ===================================
    Error output
    ===================================
    Exception in thread "main" java.lang.OutOfMemoryError
    at oracle.xml.parser.v2.ElementDecl.getAttrDecls(ElementDecl.java, Compi
    led Code)
    at java.util.Hashtable.<init>(Unknown Source)
    at oracle.xml.parser.v2.DTDDecl.<init>(DTDDecl.java, Compiled Code)
    at oracle.xml.parser.v2.ElementDecl.getAttrDecls(ElementDecl.java, Compi
    led Code)
    at oracle.xml.parser.v2.ValidatingParser.checkDefaultAttributes(Validati
    ngParser.java, Compiled Code)
    at oracle.xml.parser.v2.NonValidatingParser.parseAttributes(NonValidatin
    gParser.java, Compiled Code)
    at oracle.xml.parser.v2.NonValidatingParser.parseElement(NonValidatingPa
    rser.java, Compiled Code)
    at oracle.xml.parser.v2.ValidatingParser.parseRootElement(ValidatingPars
    er.java:97)
    at oracle.xml.parser.v2.NonValidatingParser.parseDocument(NonValidatingP
    arser.java:199)
    at oracle.xml.parser.v2.XMLParser.parse(XMLParser.java:146)
    at TestLF.main(TestLF.java:40)
    null

    We have a number of test files that are that size and it works without a problem. However using the DOMParser does require significantly more memory than your doc size.
    What is the memory configuration of the JVM that you are running with? Have you tried increasing it? Are you using our latest version 2.0.2.6?
    Oracle XML Team

  • Parsing Special Characters in XML

    Hi,
    I have an incoming XML snippet that has the special characters already escaped.
    If the Title is something like kkkkk ?& [] ]]> XML comes back escaped for & and >
    <title><kkkkk ? & [] ]]></title>
    Now I would like parse this ESCAPED Title correctly that should result in
    <![CDATA[kkkkk ?& [] ]]>]]>
    BUT INSTEAD I just get
    <![CDATA[>]]>
    What is it that I am missing?
    Thank you so much.
    Meena

    A CDATA section can not contain the string "]]>" because that string is used to identify the end of CDATA section. Try removing the additional "]]>" and try if it works good for the rest of the data within the CDATA section.

Maybe you are looking for