Core Java| JSP| Servlets| XML| EJB| JEE5| Web Services| J2ME| Glossary| Questions? | Software Development
 

Preventing Expansion of Entity References

This Example shows you how to prevent expansion of entity references while parsing an XML file in a DOM document.

Preventing Expansion of Entity References

                         

This Example shows you how to prevent expansion of entity references while parsing an XML file in a DOM document. JAXP (JavaAPI for XML Processing) is an interface which provides parsing of xml documents. Here the Document BuilderFactory is used to create new DOM parsers.There are some of the methods used in code given below for Preventing Expansion of Entity References:-

DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance():- This method Creates a DocumentBuilder Factory .DocumentBuilder Factory is a Class that enables application to obtain parser for building DOM trees from XML Document

DocumentBuilder builder = Factory.newDocumentBuilder():-This method creates a DocumentBuilder object with the help of a DocumentBuilderFactory

File file = new File("Document4.xml"):-Creates a new File.

builderFactory.setExpandEntityReferences(false):-This method specifies that the parser produced by this code will expand entity reference nodes

TransformerFactory factory = TransformerFactory.newInstance():-TransformerFactory is a class that is used to create Transformer objects. A TransformerFactory instance can be used to create Transformer and Templates objects.

transformer.transform(source, result):-This function organize data according to a style sheet as we are retrieving it from the File.


XML code for the program generated is:-

<?xml version="1.0" encoding="UTF-8"?>
<!--     Information About Employees -->
<Company>
    <Employee Id="Rose-2345">
    <CompanyName>Newstrack</CompanyName>
        <City>Rohini</City>>
        <name>Girish Tewari</name>
        <Phoneno>1234567890</Phoneno>
       <Doj>May 2008</Doj>
        </Employee>
    <!-- Information about other  Employee -->    
    <Employee Id="Rose-2346">
        <CompanyName>RoseIndia.net</CompanyName>
         <City>Lucknow</City>
         <name>Mahendra Singh</name>
        <Phoneno>123652314</Phoneno>
        <Doj>May 2008</Doj>
    </Employee>
</Company>

 

PreventingExpansionofEntityReferences.java

 /* 
 * @Program for Preventing Expansion of Entity References While Parsing an XML File
 * PreventingExpansionofEntityReferences.java 
 * Author:-RoseIndia Team
 * Date:-21-July-2008
 */

import java.io.*;
import org.w3c.dom.*;
import javax.xml.parsers.*;
import javax.xml.transform.*;
import javax.xml.transform.dom.*;
import javax.xml.transform.stream.*;

public class 
PreventingExpansionofEntityReferences {

    public static void main(String[] args) throws Exception {
        File f = new File("Document4.xml");
        DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
 //Specifies that the parser produced by this code will expand entity reference nodes
        builderFactory.setExpandEntityReferences(false);
        DocumentBuilder builder = builderFactory.newDocumentBuilder();
        Document doc = builder.parse(f);
        TransformerFactory transformerFactory = TransformerFactory.newInstance();
        Transformer transformer = transformerFactory.newTransformer();
        transformer.setOutputProperty(OutputKeys.INDENT, "yes");

        StringWriter writer = new StringWriter();
        StreamResult result = new StreamResult(writer);
        DOMSource source = new DOMSource(doc);
        transformer.transform(source, result);
        String xmlfile=writer.toString();
        System.out.println(xmlfile);
    }
}



Output of the program:-

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--     Information About Employees -->
<Company>
    <Employee Id="Rose-2345">
    <CompanyName>Newstrack</CompanyName>
        <City>Rohini</City>&gt;
        <name>Girish Tewari</name>
        <Phoneno>1234567890</Phoneno>
       <Doj>May 2008</Doj>
        </Employee>
    <!-- Information about other  Employee -->    
    <Employee Id="Rose-2346">
        <CompanyName>RoseIndia.net</CompanyName>
         <City>Lucknow</City>
         <name>Mahendra Singh</name>
        <Phoneno>123652314</Phoneno>
        <Doj>May 2008</Doj>
    </Employee>
</Company>
  


Download Source Code

                         

» View all related tutorials
Related Tags: c xml string rest text date data attributes schema diff io include types custom free user type boolean order content

Leave your comment:

Name:

Email:

URL:

Title:

Comments:


Enter Code:

Audio Version
Reload Image
 

Note: Emails will not be visible or used in any way, and are not required. Please keep comments relevant. Any content deemed inappropriate or offensive may be edited and/or deleted.

No HTML code is allowed. Line breaks will be converted automatically. URLs will be auto-linked. Please use BBCode to format your text.

Add This Tutorial To:
  Del.icio.us   Digg   Google   Spurl   Blink   Furl   Simpy   Y! MyWeb 
 
Tell A Friend
Your Friend Name

 

 
Recently Viewed
Software Solutions
Search Tutorials

 

 
 

Home | JSP | EJB | JDBC | Java Servlets | WAP  | Free JSP Hosting  | Search Engine | News Archive | Jboss 3.0 tutorial | Free Linux CD's | Forum | Blogs

About Us | Advertising On RoseIndia.net  | Site Map

India News

Send your comments, Suggestions or Queries regarding this site at roseindia_net@yahoo.com.

Copyright © 2008. All rights reserved.