Example usage for org.dom4j.io SAXReader setEntityResolver

List of usage examples for org.dom4j.io SAXReader setEntityResolver

Introduction

In this page you can find the example usage for org.dom4j.io SAXReader setEntityResolver.

Prototype

public void setEntityResolver(EntityResolver entityResolver) 

Source Link

Document

Sets the entity resolver used to resolve entities.

Usage

From source file:com.liferay.portal.tools.EJBXMLBuilder.java

License:Open Source License

private void _buildJRunXML() throws Exception {
    StringBuffer sb = new StringBuffer();

    sb.append("<?xml version=\"1.0\"?>\n");
    sb.append(/*from w  w w . j  a va  2  s . c o  m*/
            "<!DOCTYPE jrun-ejb-jar PUBLIC \"-//Macromedia, Inc.//DTD jrun-ejb-jar 4.0//EN\" \"http://jrun.macromedia.com/dtds/jrun-ejb-jar.dtd\">\n");

    sb.append("\n<jrun-ejb-jar>\n");
    sb.append("\t<enterprise-beans>\n");

    SAXReader reader = new SAXReader();
    reader.setEntityResolver(new EntityResolver());

    Document doc = reader.read(new File("classes/META-INF/ejb-jar.xml"));

    Iterator itr = doc.getRootElement().element("enterprise-beans").elements("session").iterator();

    while (itr.hasNext()) {
        Element entity = (Element) itr.next();

        sb.append("\t\t<session>\n");
        sb.append("\t\t\t<ejb-name>").append(entity.elementText("ejb-name")).append("</ejb-name>\n");

        if (entity.elementText("display-name").endsWith("LocalManagerEJB")) {
            sb.append("\t\t\t<local-jndi-name>ejb/liferay/").append(entity.elementText("display-name"))
                    .append("Home</local-jndi-name>\n");
        } else {
            sb.append("\t\t\t<jndi-name>").append(entity.elementText("ejb-name")).append("</jndi-name>\n");
        }

        sb.append("\t\t\t<cluster-home>false</cluster-home>\n");
        sb.append("\t\t\t<cluster-object>false</cluster-object>\n");
        sb.append("\t\t\t<timeout>3000</timeout>\n");
        sb.append("\t\t</session>\n");
    }

    sb.append("\t</enterprise-beans>\n");
    sb.append("</jrun-ejb-jar>");

    File outputFile = new File("classes/META-INF/jrun-ejb-jar.xml");

    if (!outputFile.exists() || !FileUtil.read(outputFile).equals(sb.toString())) {

        FileUtil.write(outputFile, sb.toString());

        Logger.info(EJBXMLBuilder.class, outputFile.toString());
    }
}

From source file:com.liferay.portal.tools.EJBXMLBuilder.java

License:Open Source License

private void _buildPramatiXML() throws Exception {
    Map tableNames = new HashMap();

    StringBuffer sb = new StringBuffer();

    sb.append("<?xml version=\"1.0\"?>\n");
    sb.append(//from  w  w  w.  j av a  2 s  . co  m
            "<!DOCTYPE pramati-j2ee-server PUBLIC \"-//Pramati Technologies //DTD Pramati J2ee Server 3.5 SP5//EN\" \"http://www.pramati.com/dtd/pramati-j2ee-server_3_5.dtd\">\n");

    sb.append("\n<pramati-j2ee-server>\n");
    sb.append("\t<vhost-name>default</vhost-name>\n");
    sb.append("\t<auto-start>TRUE</auto-start>\n");
    sb.append("\t<realm-name />\n");
    sb.append("\t<ejb-module>\n");
    sb.append("\t\t<name>").append(_jarFileName).append("</name>\n");

    SAXReader reader = new SAXReader();
    reader.setEntityResolver(new EntityResolver());

    Document doc = reader.read(new File("classes/META-INF/ejb-jar.xml"));

    Iterator itr = doc.getRootElement().element("enterprise-beans").elements("session").iterator();

    while (itr.hasNext()) {
        Element entity = (Element) itr.next();

        sb.append("\t\t<ejb>\n");
        sb.append("\t\t\t<name>").append(entity.elementText("ejb-name")).append("</name>\n");
        sb.append("\t\t\t<max-pool-size>40</max-pool-size>\n");
        sb.append("\t\t\t<min-pool-size>20</min-pool-size>\n");
        sb.append("\t\t\t<enable-freepool>false</enable-freepool>\n");
        sb.append("\t\t\t<pool-waittimeout-millis>60000</pool-waittimeout-millis>\n");

        sb.append("\t\t\t<low-activity-interval>20</low-activity-interval>\n");
        sb.append("\t\t\t<is-secure>false</is-secure>\n");
        sb.append("\t\t\t<is-clustered>true</is-clustered>\n");

        if (entity.elementText("display-name").endsWith("LocalManagerEJB")) {
            sb.append("\t\t\t<jndi-name>ejb/liferay/").append(entity.elementText("display-name"))
                    .append("Home</jndi-name>\n");
        } else {
            sb.append("\t\t\t<jndi-name>").append(entity.elementText("ejb-name")).append("</jndi-name>\n");
        }

        sb.append("\t\t\t<local-jndi-name>").append(entity.elementText("ejb-name")).append("__PRAMATI_LOCAL")
                .append("</local-jndi-name>\n");

        sb.append(_buildPramatiXMLRefs(entity));

        sb.append("\t\t</ejb>\n");
    }

    sb.append("\t</ejb-module>\n");
    sb.append("</pramati-j2ee-server>");

    File outputFile = new File("classes/pramati-j2ee-server.xml");

    if (!outputFile.exists() || !FileUtil.read(outputFile).equals(sb.toString())) {

        FileUtil.write(outputFile, sb.toString());

        Logger.info(EJBXMLBuilder.class, outputFile.toString());
    }
}

From source file:com.liferay.portal.tools.EJBXMLBuilder.java

License:Open Source License

private void _buildRexIPXML() throws Exception {
    StringBuffer sb = new StringBuffer();

    sb.append("<?xml version=\"1.0\"?>\n");

    sb.append("\n<rexip-ejb-jar>\n");
    sb.append("\t<enterprise-beans>\n");

    SAXReader reader = new SAXReader();
    reader.setEntityResolver(new EntityResolver());

    Document doc = reader.read(new File("classes/META-INF/ejb-jar.xml"));

    Iterator itr = doc.getRootElement().element("enterprise-beans").elements("session").iterator();

    while (itr.hasNext()) {
        Element entity = (Element) itr.next();

        sb.append("\t\t<session>\n");
        sb.append("\t\t\t<ejb-name>").append(entity.elementText("ejb-name")).append("</ejb-name>\n");

        if (entity.elementText("display-name").endsWith("LocalManagerEJB")) {
            sb.append("\t\t\t<local-jndi-name>ejb/liferay/").append(entity.elementText("display-name"))
                    .append("Home</local-jndi-name>\n");
        } else {// w  ww.j a v a 2 s .co  m
            sb.append("\t\t\t<jndi-name>").append(entity.elementText("ejb-name")).append("</jndi-name>\n");
        }

        sb.append("\t\t\t<clustered>true</clustered>\n");
        sb.append("\t\t\t<pool-size>20</pool-size>\n");
        sb.append("\t\t\t<cache-size>20</cache-size>\n");
        sb.append("\t\t</session>\n");
    }

    sb.append("\t</enterprise-beans>\n");
    sb.append("</rexip-ejb-jar>");

    File outputFile = new File("classes/META-INF/rexip-ejb-jar.xml");

    if (!outputFile.exists() || !FileUtil.read(outputFile).equals(sb.toString())) {

        FileUtil.write(outputFile, sb.toString());

        Logger.info(EJBXMLBuilder.class, outputFile.toString());
    }
}

From source file:com.liferay.portal.tools.EJBXMLBuilder.java

License:Open Source License

private void _buildSunXML() throws Exception {
    StringBuffer sb = new StringBuffer();

    sb.append("<?xml version=\"1.0\"?>\n");
    sb.append(//from   w w w.j ava  2 s  . co m
            "<!DOCTYPE sun-ejb-jar PUBLIC \"-//Sun Microsystems, Inc.//DTD Sun ONE Application Server 7.0 EJB 2.0//EN\" \"http://www.sun.com/software/sunone/appserver/dtds/sun-ejb-jar_2_0-0.dtd\">\n");

    sb.append("\n<sun-ejb-jar>\n");
    sb.append("\t<enterprise-beans>\n");

    SAXReader reader = new SAXReader();
    reader.setEntityResolver(new EntityResolver());

    Document doc = reader.read(new File("classes/META-INF/ejb-jar.xml"));

    Iterator itr = doc.getRootElement().element("enterprise-beans").elements("session").iterator();

    while (itr.hasNext()) {
        Element entity = (Element) itr.next();

        sb.append("\t\t<ejb>\n");
        sb.append("\t\t\t<ejb-name>").append(entity.elementText("ejb-name")).append("</ejb-name>\n");

        if (entity.elementText("display-name").endsWith("LocalManagerEJB")) {
            sb.append("\t\t\t<jndi-name>ejb/liferay/").append(entity.elementText("display-name"))
                    .append("Home</jndi-name>\n");
        } else {
            sb.append("\t\t\t<jndi-name>").append(entity.elementText("ejb-name")).append("</jndi-name>\n");
        }

        sb.append("\t\t\t<bean-pool>\n");
        sb.append("\t\t\t\t<steady-pool-size>0</steady-pool-size>\n");
        sb.append("\t\t\t\t<resize-quantity>60</resize-quantity>\n");
        sb.append("\t\t\t\t<max-pool-size>60</max-pool-size>\n");
        sb.append("\t\t\t\t<pool-idle-timeout-in-seconds>900</pool-idle-timeout-in-seconds>\n");
        sb.append("\t\t\t</bean-pool>\n");
        sb.append("\t\t</ejb>\n");
    }

    sb.append("\t</enterprise-beans>\n");
    sb.append("</sun-ejb-jar>");

    File outputFile = new File("classes/META-INF/sun-ejb-jar.xml");

    if (!outputFile.exists() || !FileUtil.read(outputFile).equals(sb.toString())) {

        FileUtil.write(outputFile, sb.toString());

        Logger.info(EJBXMLBuilder.class, outputFile.toString());
    }
}

From source file:com.liferay.portal.tools.EJBXMLBuilder.java

License:Open Source License

private void _buildWebLogicXML() throws Exception {
    StringBuffer sb = new StringBuffer();

    sb.append("<?xml version=\"1.0\"?>\n");
    sb.append(//from ww  w.j  a va2s  .co  m
            "<!DOCTYPE weblogic-ejb-jar PUBLIC \"-//BEA Systems, Inc.//DTD WebLogic 7.0.0 EJB//EN\" \"http://www.bea.com/servers/wls700/dtd/weblogic-ejb-jar.dtd\">\n");

    sb.append("\n<weblogic-ejb-jar>\n");

    SAXReader reader = new SAXReader();
    reader.setEntityResolver(new EntityResolver());

    Document doc = reader.read(new File("classes/META-INF/ejb-jar.xml"));

    Iterator itr = doc.getRootElement().element("enterprise-beans").elements("session").iterator();

    while (itr.hasNext()) {
        Element entity = (Element) itr.next();

        sb.append("\t<weblogic-enterprise-bean>\n");
        sb.append("\t\t<ejb-name>").append(entity.elementText("ejb-name")).append("</ejb-name>\n");

        if (entity.elementText("display-name").endsWith("LocalManagerEJB")) {
            sb.append("\t\t<local-jndi-name>ejb/liferay/").append(entity.elementText("display-name"))
                    .append("Home</local-jndi-name>\n");
        } else {
            sb.append("\t\t<jndi-name>").append(entity.elementText("ejb-name")).append("</jndi-name>\n");
        }

        sb.append("\t</weblogic-enterprise-bean>\n");
    }

    sb.append("</weblogic-ejb-jar>");

    File outputFile = new File("classes/META-INF/weblogic-ejb-jar.xml");

    if (!outputFile.exists() || !FileUtil.read(outputFile).equals(sb.toString())) {

        FileUtil.write(outputFile, sb.toString());

        Logger.info(EJBXMLBuilder.class, outputFile.toString());
    }
}

From source file:com.liferay.portal.tools.EJBXMLBuilder.java

License:Open Source License

private void _buildWebSphereXML() throws Exception {
    StringBuffer sb = new StringBuffer();

    sb.append("<?xml version=\"1.0\"?>\n");

    sb.append(/*from  w  w  w .  jav  a  2  s . c  o m*/
            "\n<com.ibm.ejs.models.base.bindings.ejbbnd:EJBJarBinding xmlns:com.ibm.ejs.models.base.bindings.ejbbnd=\"ejbbnd.xmi\" xmlns:xmi=\"http://www.omg.org/XMI\" xmlns:com.ibm.ejs.models.base.bindings.commonbnd=\"commonbnd.xmi\" xmlns:com.ibm.etools.ejb=\"ejb.xmi\" xmlns:com.ibm.etools.j2ee.common=\"common.xmi\" xmi:version=\"2.0\" xmi:id=\"ejb-jar_ID_Bnd\" currentBackendId=\"CLOUDSCAPE_V50_1\">\n");
    sb.append("\t<ejbJar href=\"META-INF/ejb-jar.xml#ejb-jar_ID\" />\n");

    SAXReader reader = new SAXReader();
    reader.setEntityResolver(new EntityResolver());

    Document doc = reader.read(new File("classes/META-INF/ejb-jar.xml"));

    int sessionCount = 0;
    int ejbLocalRefCount = 0;

    Iterator itr1 = doc.getRootElement().element("enterprise-beans").elements("session").iterator();

    while (itr1.hasNext()) {
        Element sessionEl = (Element) itr1.next();

        sb.append("\t<ejbBindings xmi:id=\"Session_").append(++sessionCount).append("_Bnd\" jndiName=\"");

        if (sessionEl.elementText("display-name").endsWith("LocalManagerEJB")) {
            sb.append("ejb/liferay/").append(sessionEl.elementText("display-name")).append("Home");
        } else {
            sb.append(sessionEl.elementText("ejb-name"));
        }

        sb.append("\">\n");

        sb.append(
                "\t\t<enterpriseBean xmi:type=\"com.ibm.etools.ejb:Session\" href=\"META-INF/ejb-jar.xml#Session_")
                .append(sessionCount).append("\" />\n");

        Iterator itr2 = sessionEl.elements("ejb-local-ref").iterator();

        while (itr2.hasNext()) {
            Element ejbLocalRefEl = (Element) itr2.next();

            sb.append("\t\t<ejbRefBindings xmi:id=\"EjbRefBinding_").append(++ejbLocalRefCount)
                    .append("\" jndiName=\"").append(ejbLocalRefEl.elementText("ejb-ref-name")).append("\">\n");
            sb.append(
                    "\t\t\t<bindingEjbRef xmi:type=\"com.ibm.etools.j2ee.common:EJBLocalRef\" href=\"META-INF/ejb-jar.xml#EjbRef_")
                    .append(ejbLocalRefCount).append("\" />\n");
            sb.append("\t\t</ejbRefBindings>\n");
        }

        sb.append("\t</ejbBindings>\n");
    }

    sb.append("</com.ibm.ejs.models.base.bindings.ejbbnd:EJBJarBinding>");

    File outputFile = new File("classes/META-INF/ibm-ejb-jar-bnd.xmi");

    if (!outputFile.exists() || !FileUtil.read(outputFile).equals(sb.toString())) {

        FileUtil.write(outputFile, sb.toString());

        Logger.info(EJBXMLBuilder.class, outputFile.toString());
    }
}

From source file:com.liferay.portal.tools.EJBXMLBuilder.java

License:Open Source License

private void _updateEJBXML() throws Exception {
    File xmlFile = new File("classes/META-INF/ejb-jar.xml");

    StringBuffer methodsSB = new StringBuffer();

    SAXReader reader = new SAXReader();
    reader.setEntityResolver(new EntityResolver());

    Document doc = reader.read(xmlFile);

    Iterator itr = doc.getRootElement().element("enterprise-beans").elements("entity").iterator();

    while (itr.hasNext()) {
        Element entity = (Element) itr.next();

        methodsSB.append("\t\t\t<method>\n");
        methodsSB.append("\t\t\t\t<ejb-name>" + entity.elementText("ejb-name") + "</ejb-name>\n");
        methodsSB.append("\t\t\t\t<method-name>*</method-name>\n");
        methodsSB.append("\t\t\t</method>\n");
    }/*w ww. j av a  2s. co m*/

    itr = doc.getRootElement().element("enterprise-beans").elements("session").iterator();

    while (itr.hasNext()) {
        Element entity = (Element) itr.next();

        methodsSB.append("\t\t\t<method>\n");
        methodsSB.append("\t\t\t\t<ejb-name>" + entity.elementText("ejb-name") + "</ejb-name>\n");
        methodsSB.append("\t\t\t\t<method-name>*</method-name>\n");
        methodsSB.append("\t\t\t</method>\n");
    }

    StringBuffer sb = new StringBuffer();

    sb.append("\t<assembly-descriptor>\n");
    sb.append("\t\t<method-permission>\n");
    sb.append("\t\t\t<unchecked />\n");
    sb.append(methodsSB);
    sb.append("\t\t</method-permission>\n");
    sb.append("\t\t<container-transaction>\n");
    sb.append(methodsSB);
    sb.append("\t\t\t<trans-attribute>Required</trans-attribute>\n");
    sb.append("\t\t</container-transaction>\n");
    sb.append("\t</assembly-descriptor>\n");

    String content = FileUtil.read(xmlFile);

    int x = content.indexOf("<assembly-descriptor>") - 1;
    int y = content.indexOf("</assembly-descriptor>", x) + 23;

    if (x < 0) {
        x = content.indexOf("</ejb-jar>");
        y = x;
    }

    String newContent = content.substring(0, x) + sb.toString() + content.substring(y, content.length());

    if (!content.equals(newContent)) {
        FileUtil.write(xmlFile, newContent);
    }
}

From source file:com.orange.atk.atkUI.corecli.utils.XMLParser.java

License:Apache License

public XMLParser(File f, String dtdURL, String dtdDirectory) {
    this.file = f;
    SAXReader reader = new SAXReader();
    if (dtdURL != null && dtdDirectory != null) {
        reader.setEntityResolver(new MatosResolver(dtdURL, dtdDirectory));
    }//from   ww  w .ja v  a2  s . co  m
    try {
        doc = reader.read(f);
        root = doc.getRootElement();
    } catch (DocumentException e) {
        Alert.raise(e, "Error with file '" + f.getAbsolutePath() + "': \n" + e.getMessage());
    }
}

From source file:com.poka.util.XmlSax.java

public Document load(String f, boolean isHiberConfig) {
    Document document = null;/*from  ww w. j av a  2 s.  c  om*/
    try {
        SAXReader saxReader = new SAXReader();
        //saxReader.setValidation(false);  
        //saxReader.setFeature("http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd", false);              
        //document = saxReader.read(f); //?XML,document
        if (isHiberConfig) {
            saxReader.setEntityResolver(new EntityResolver() {
                @Override
                public InputSource resolveEntity(String publicId, String systemId)
                        throws SAXException, IOException {
                    // TODO Auto-generated method stub
                    InputSource is = new InputSource(this.getClass().getClassLoader()
                            .getResourceAsStream("com/poka/images/hibernate-configuration-3.0.dtd"));
                    is.setPublicId(publicId);
                    is.setSystemId(systemId);
                    return is;
                }
            });
            saxReader.setValidation(true);
        }
        File tFile = new File(f);
        if (!tFile.exists() && !isHiberConfig) {
            document = DocumentHelper.createDocument();
            //    document.addDocType("hibernate-configuration", "-//Hibernate/Hibernate Configuration DTD 3.0//EN", "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd");

            // 
            Element root = DocumentHelper.createElement("root");
            document.setRootElement(root);
        } else {
            document = saxReader.read(tFile);
        }

    } catch (DocumentException ex) {
    }
    return document;
}

From source file:com.taobao.datasource.LoginConfigParser.java

License:Open Source License

@SuppressWarnings("unchecked")
public static Map<String, SecureIdentityLoginModule> parse(File file) throws DocumentException {
    SAXReader reader = new SAXReader();
    // Prevent from resolving dtd files
    reader.setEntityResolver(new EntityResolver() {
        public InputSource resolveEntity(String publicId, String systemId) throws SAXException, IOException {
            return new InputSource(
                    new ByteArrayInputStream("<?xml version='1.0' encoding='UTF-8'?>".getBytes()));
        }/*w ww  .  j a  v a 2  s.  com*/
    });
    Document document = reader.read(file);
    List<Node> nodes = applicationPolicyPath.selectNodes(document);

    Map<String, SecureIdentityLoginModule> result = new HashMap<String, SecureIdentityLoginModule>();
    for (Node node : nodes) {
        createSecureIdentityLoginModule(result, node);
    }
    return result;
}