Example usage for org.dom4j.jaxb JAXBReader addObjectHandler

List of usage examples for org.dom4j.jaxb JAXBReader addObjectHandler

Introduction

In this page you can find the example usage for org.dom4j.jaxb JAXBReader addObjectHandler.

Prototype

public void addObjectHandler(String path, JAXBObjectHandler handler) 

Source Link

Document

Registers a JAXBObjectHandler that will be supplied with the unmarshalled representation of the xml fragment whenever the specified path is encounted.

Usage

From source file:org.dom4j.samples.jaxb.JAXBDemo.java

License:Open Source License

public void demoRead() {
    try {/*from w ww  .j ava2 s.co m*/
        File inputFile = new File("xml/jaxb/primer.xml");

        JAXBReader jaxbReader = new JAXBReader("org.dom4j.test.primer");

        System.out.println("Fetched PurchaseOrders using JAXBObjectHandler:");
        jaxbReader.addObjectHandler("/purchaseOrders/purchaseOrder", new PurchaseOrderHandler());
        Document doc = jaxbReader.read(inputFile);

        System.out.println("Fetched PurchaseOrders using DOM4J document:");
        Iterator orderIt = doc.selectNodes("/purchaseOrders/purchaseOrder").iterator();
        while (orderIt.hasNext()) {
            Element elem = (Element) orderIt.next();

            System.out.println(
                    "Order - id:" + elem.attributeValue("id") + ", date:" + elem.attributeValue("orderDate"));
        }

        System.out.println("Document:");
        System.out.println(doc.asXML());
        System.out.println();
    } catch (Exception e) {
        e.printStackTrace();
    }
}

From source file:org.dom4j.samples.jaxb.JAXBDemo.java

License:Open Source License

public void demoReadPrune() {
    try {/* ww  w  .  j a  v  a2 s. c  o  m*/
        File inputFile = new File("xml/jaxb/primer.xml");

        JAXBReader jaxbReader = new JAXBReader("org.dom4j.test.primer");

        System.out.println("Fetched PurchaseOrders using JAXBObjectHandler:");
        jaxbReader.setPruneElements(true);
        jaxbReader.addObjectHandler("/purchaseOrders/purchaseOrder", new PurchaseOrderHandler());
        Document doc = jaxbReader.read(inputFile);

        System.out.println("Pruned document:");
        System.out.println(doc.asXML());
        System.out.println();
    } catch (Exception e) {
        e.printStackTrace();
    }
}