Example usage for javax.xml.parsers ParserConfigurationException printStackTrace

List of usage examples for javax.xml.parsers ParserConfigurationException printStackTrace

Introduction

In this page you can find the example usage for javax.xml.parsers ParserConfigurationException printStackTrace.

Prototype

public void printStackTrace() 

Source Link

Document

Prints this throwable and its backtrace to the standard error stream.

Usage

From source file:org.pentaho.osgi.platform.plugin.deployer.impl.handlers.pluginxml.PluginXmlExternalResourcesHandlerTest.java

@Test
public void testHandleTwoNodes() throws PluginHandlingException, IOException {
    Map<String, String> node1Props = new HashMap<String, String>();
    node1Props.put("context", "requirejs");
    Map<String, String> node2Props = new HashMap<String, String>();
    node2Props.put("context", "requirejs");
    Node node1 = PluginXmlStaticPathsHandlerTest.makeMockNode(node1Props);
    when(node1.getTextContent()).thenReturn("/test/content/1");
    Node node2 = PluginXmlStaticPathsHandlerTest.makeMockNode(node2Props);
    when(node2.getTextContent()).thenReturn("/test/content/2");
    PluginXmlExternalResourcesHandler pluginXmlExternalResourcesHandler = new PluginXmlExternalResourcesHandler();
    pluginXmlExternalResourcesHandler.setJsonUtil(new JSONUtil());
    PluginMetadata pluginMetadata = mock(PluginMetadata.class);
    FileWriter fileWriter = mock(FileWriter.class);
    final StringBuilder sb = new StringBuilder();
    doAnswer(new Answer<Object>() {
        @Override//  ww w .j  ava2  s.  com
        public Object answer(InvocationOnMock invocation) throws Throwable {
            sb.append(invocation.getArguments()[0]);
            return null;
        }
    }).when(fileWriter).write(anyString());
    when(pluginMetadata.getFileWriter(PluginXmlExternalResourcesHandler.EXTERNAL_RESOURCES_FILE))
            .thenReturn(fileWriter);

    // Setup Blueprint
    Document blueprint = null;
    try {
        blueprint = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
        blueprint.appendChild(
                blueprint.createElementNS(PluginXmlStaticPathsHandler.BLUEPRINT_BEAN_NS, "blueprint"));
    } catch (ParserConfigurationException e) {
        e.printStackTrace();
        fail();
    }
    when(pluginMetadata.getBlueprint()).thenReturn(blueprint);

    List<Node> nodes = new ArrayList<Node>(Arrays.asList(node1, node2));
    pluginXmlExternalResourcesHandler.handle("plugin.xml", nodes, pluginMetadata);
    String result = sb.toString();
    JSONObject jsonObject = (JSONObject) JSONValue.parse(result);
    assertEquals(1, jsonObject.size());
    List<String> configs = (List<String>) jsonObject.get("requirejs");
    assertNotNull(configs);
    assertEquals(2, configs.size());
    assertEquals("/test/content/1", configs.get(0));
    assertEquals("/test/content/2", configs.get(1));

    NodeList childNodes = blueprint.getDocumentElement().getChildNodes();
    assertEquals(2, childNodes.getLength());
    for (int i = 0; i < childNodes.getLength(); i++) {
        assertEquals("service", childNodes.item(i).getNodeName());
        assertEquals("org.pentaho.platform.pdi.PlatformWebResource",
                childNodes.item(i).getFirstChild().getAttributes().getNamedItem("class").getNodeValue());
    }
}

From source file:org.pentaho.platform.web.servlet.SolutionEngineInteractivityService.java

protected void handleActionRequest(final HttpServletRequest request, final HttpServletResponse response,
        final HttpOutputHandler outputHandler, final HttpServletRequestHandler requestHandler,
        IParameterProvider requestParameters, ByteArrayOutputStream outputStream,
        final IContentItem contentItem) throws ServletException, IOException {
    IRuntimeContext runtime = null;/*from  ww  w . j  a  v  a2 s.c o m*/
    try {

        final org.w3c.dom.Document document = DocumentBuilderFactory.newInstance().newDocumentBuilder()
                .newDocument();
        final org.w3c.dom.Element root = document.createElement("action_sequence_info");
        document.appendChild(root);

        requestHandler.setCreateFeedbackParameterCallback(new ICreateFeedbackParameterCallback() {
            public void createFeedbackParameter(IRuntimeContext runtimeContext, String fieldName,
                    String displayName, String hint, Object defaultValues, List values, Map dispNames,
                    String displayStyle, boolean optional, boolean visible) {

                org.w3c.dom.Element parameterElement = document.createElement("parameter");
                parameterElement.setAttribute("name", fieldName);
                parameterElement.setAttribute("display-name", displayName);
                parameterElement.setAttribute("display-style", displayStyle);
                parameterElement.setAttribute("hint", "" + hint);
                parameterElement.setAttribute("optional", "" + optional);
                parameterElement.setAttribute("visible", "" + visible);

                try {
                    IActionParameter actionParameter = runtimeContext.getInputParameter(fieldName);
                    if (actionParameter != null) {
                        List variables = actionParameter.getVariables();
                        for (int i = 0; variables != null && i < variables.size(); i++) {
                            Object var = variables.get(i);
                            if (var instanceof ActionParameterSource) {
                                String sourceName = ((ActionParameterSource) var).getSourceName();
                                String sourceValue = ((ActionParameterSource) var).getValue();
                                parameterElement.setAttribute("source-name", "" + sourceName);
                                parameterElement.setAttribute("source-value", "" + sourceValue);
                            } else {
                                System.out.println(var);
                            }
                        }
                    }
                } catch (Exception npe) {
                    //ignore
                }

                root.appendChild(parameterElement);

                if (values != null) {
                    org.w3c.dom.Element valuesElement = document.createElement("values");
                    for (Object value : values) {
                        org.w3c.dom.Element valueElement = document.createElement("value");
                        valueElement.setAttribute("value", "" + value);
                        if (dispNames != null && dispNames.containsKey(value)) {
                            valueElement.setAttribute("display-name", "" + dispNames.get(value));
                        }
                        valuesElement.appendChild(valueElement);
                    }
                    parameterElement.appendChild(valuesElement);
                }
                if (defaultValues != null) {
                    org.w3c.dom.Element valuesElement = document.createElement("selected-values");
                    if (defaultValues instanceof List) {
                        for (Object value : (List) defaultValues) {
                            org.w3c.dom.Element valueElement = document.createElement("value");
                            valueElement.setAttribute("value", "" + value);
                            valuesElement.appendChild(valueElement);
                        }
                    } else {
                        org.w3c.dom.Element valueElement = document.createElement("value");
                        valueElement.setAttribute("value", "" + defaultValues);
                        valuesElement.appendChild(valueElement);
                    }
                    parameterElement.appendChild(valuesElement);
                }
            }
        });
        runtime = requestHandler.handleActionRequest(0, 0);

        root.setAttribute("is-prompt-pending", "" + runtime.isPromptPending());

        DOMSource source = new DOMSource(document);
        StreamResult result = new StreamResult(new StringWriter());
        TransformerFactory.newInstance().newTransformer().transform(source, result);
        String theXML = result.getWriter().toString();

        response.setContentType("text/xml");
        response.getOutputStream().write(theXML.getBytes());
        response.getOutputStream().close();

    } catch (ParserConfigurationException e) {
        e.printStackTrace();
    } catch (TransformerConfigurationException e) {
        e.printStackTrace();
    } catch (TransformerException e) {
        e.printStackTrace();
    } catch (TransformerFactoryConfigurationError e) {
        e.printStackTrace();
    } finally {
        if (runtime != null) {
            runtime.dispose();
        }
    }
    if (contentItem != null) {
        contentItem.closeOutputStream();
    }
}

From source file:org.pentaho.supportutility.config.retriever.ConfigRetreiver.java

/**
 * To read and parse context.xml to get database connection details
 * /*from   w w w  . j  a  va2  s .  c o  m*/
 * @param filePath
 * @return database nodelist
 */
protected NodeList parseContextXml(String filePath) {
    NodeList resourceNList = null;
    File contextXml = new File(filePath);
    DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
    DocumentBuilder dBuilder;
    try {
        dBuilder = dbFactory.newDocumentBuilder();
        Document doc = dBuilder.parse(contextXml);
        doc.getDocumentElement().normalize();
        resourceNList = doc.getElementsByTagName(SupportUtilConstant.RESOURCE);
    } catch (ParserConfigurationException e) {
        e.printStackTrace();
    } catch (SAXException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    return resourceNList;
}

From source file:org.pentaho.supportutility.config.retriever.LogRetriever.java

@Override
protected void readConfiguration(Properties props) {

    String dstDir = SupportUtilConstant.LOG_DIR;
    String logCount = props.getProperty(SupportUtilConstant.LOG_COUNT);
    String dstPath = props.getProperty(SupportUtilConstant.SUPP_INFO_DEST_PATH) + File.separator
            + props.getProperty(SupportUtilConstant.SUPP_INF_DIR);

    if (createDestDirectory(dstPath + File.separator + dstDir, null)) {

        if (getInstallType().equalsIgnoreCase(SupportUtilConstant.INSTALLER)) {

            File lPath = new File(logPath);

            DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
            DocumentBuilder dBuilder;

            try {
                dBuilder = dbFactory.newDocumentBuilder();
                Document documnet = dBuilder.parse(lPath);
                documnet.getDocumentElement().normalize();
                NodeList paramList = documnet.getElementsByTagName(SupportUtilConstant.XML_PARAM);

                // parses log4j.xml to read log path
                for (int i = 0; i < paramList.getLength(); i++) {

                    Node paramNode = paramList.item(i);
                    if (paramNode.getNodeType() == Node.ELEMENT_NODE) {

                        Element paramElement = (Element) paramNode;
                        if (paramElement.getAttribute(SupportUtilConstant.XML_NAME)
                                .equals(SupportUtilConstant.XML_FILE)) {

                            File pentahoLogfile = new File(
                                    paramElement.getAttribute(SupportUtilConstant.XML_VALUE));

                            saveConfiguration(pentahoLogfile.getAbsolutePath(),
                                    dstPath + File.separator + dstDir, logCount);
                        }//from   www  . j a va  2  s .c om
                    }
                }
            } catch (ParserConfigurationException e) {
                e.printStackTrace();
            } catch (SAXException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }

        } else if (getInstallType().equalsIgnoreCase(SupportUtilConstant.ARCHIVE)
                || getInstallType().equalsIgnoreCase(SupportUtilConstant.MANUAL)) {

            saveConfiguration(logPath, dstPath + File.separator + dstDir, logCount);

        }
    }

}

From source file:org.sakaiproject.connector.fck.FCKConnectorServlet.java

/**
 * Manage the Get requests (GetFolders, GetFoldersAndFiles, CreateFolder).<br>
 *
 * The servlet accepts commands sent in the following format:<br>
 * connector?Command=CommandName&Type=ResourceType&CurrentFolder=FolderPath<br><br>
 * It executes the command and then return the results to the client in XML format.
 *
 * Valid values for Type are: Image, File, Flash and Link 
 *
 *///  ww w .  j  ava 2  s. c  om
public void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    initialize();
    response.setContentType("text/xml; charset=UTF-8");
    response.setHeader("Cache-Control", "no-cache");
    PrintWriter out = null;

    String commandStr = request.getParameter("Command");
    String type = request.getParameter("Type");
    String currentFolder = request.getParameter("CurrentFolder");

    serverUrlPrefix = serverConfigurationService.getServerUrl();

    String collectionBase = request.getPathInfo();

    Document document = null;
    try {
        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
        DocumentBuilder builder = factory.newDocumentBuilder();
        document = builder.newDocument();
    } catch (ParserConfigurationException pce) {
        pce.printStackTrace();
    }

    Node root = createCommonXml(document, commandStr, type, currentFolder,
            contentHostingService.getUrl(currentFolder));

    //To support meletedocs, the call to getFolders has to be able to retrieve all folders that are part of melete private (which will be passed in) as 
    //well as ones that are not. This is why the advisor is being manipulated inside the getfolders method.

    if ("GetFolders".equals(commandStr)) {
        getFolders(currentFolder, root, document, collectionBase);
    } else if ("GetFoldersAndFiles".equals(commandStr)) {
        getFolders(currentFolder, root, document, collectionBase);
        //Might need this advisor for files
        pushPrivateAdvisor(currentFolder, collectionBase);
        getFiles(currentFolder, root, document, type);
        popPrivateAdvisor(currentFolder, collectionBase);
    } else if ("GetFoldersFilesAssignsTestsTopics".equals(commandStr)) {
        ConnectorHelper thisConnectorHelper = new ConnectorHelper();
        thisConnectorHelper.init();
        getFolders(currentFolder, root, document, collectionBase);
        //Might need this advisor for files
        pushPrivateAdvisor(currentFolder, collectionBase);
        getFilesOnly(currentFolder, root, document, type);
        popPrivateAdvisor(currentFolder, collectionBase);
        getAssignmentsOnly(currentFolder, root, document, type, thisConnectorHelper);
        getTestsOnly(currentFolder, root, document, type, thisConnectorHelper);
        getOtherEntitiesOnly(currentFolder, root, document, type, thisConnectorHelper);

        getForumsAndThreads(currentFolder, root, document, type, thisConnectorHelper);
    } else if ("GetResourcesAssignsTestsTopics".equals(commandStr)) {
        ConnectorHelper thisConnectorHelper = new ConnectorHelper();
        thisConnectorHelper.init();
        pushPrivateAdvisor(currentFolder, collectionBase);
        getResources(currentFolder, root, document, collectionBase, type);
        popPrivateAdvisor(currentFolder, collectionBase);
        getAssignmentsOnly(currentFolder, root, document, type, thisConnectorHelper);
        getTestsOnly(currentFolder, root, document, type, thisConnectorHelper);
        getOtherEntitiesOnly(currentFolder, root, document, type, thisConnectorHelper);

        getForumsAndThreads(currentFolder, root, document, type, thisConnectorHelper);
    } else if ("GetResources".equals(commandStr)) {
        pushPrivateAdvisor(currentFolder, collectionBase);
        getResources(currentFolder, root, document, collectionBase, type);
        popPrivateAdvisor(currentFolder, collectionBase);
    }

    else if ("CreateFolder".equals(commandStr)) {
        String newFolderStr = request.getParameter("NewFolderName");
        String status = "110";
        pushPrivateAdvisor(currentFolder, collectionBase);

        try {
            ContentCollectionEdit edit = contentHostingService.addCollection(
                    currentFolder + Validator.escapeResourceName(newFolderStr) + Entity.SEPARATOR);
            ResourcePropertiesEdit resourceProperties = edit.getPropertiesEdit();
            resourceProperties.addProperty(ResourceProperties.PROP_DISPLAY_NAME, newFolderStr);
            String altRoot = getAltReferenceRoot(currentFolder);
            if (altRoot != null)
                resourceProperties.addProperty(ContentHostingService.PROP_ALTERNATE_REFERENCE, altRoot);

            contentHostingService.commitCollection(edit);

            status = "0";
        } catch (IdUsedException iue) {
            status = "101";
        } catch (PermissionException pex) {
            status = "103";
        } catch (Exception e) {
            status = "102";
        }
        setCreateFolderResponse(status, root, document);
        popPrivateAdvisor(currentFolder, collectionBase);
    }

    document.getDocumentElement().normalize();
    try {
        out = response.getWriter();
        TransformerFactory tFactory = TransformerFactory.newInstance();
        Transformer transformer = tFactory.newTransformer();

        DOMSource source = new DOMSource(document);

        StreamResult result = new StreamResult(out);
        transformer.transform(source, result);

    } catch (Exception ex) {
        ex.printStackTrace();
    } finally {
        if (out != null) {
            out.close();
        }
    }

    //Pop the advisor if we need to
    popPrivateAdvisor(currentFolder, collectionBase);
}

From source file:org.sakaiproject.tool.assessment.contentpackaging.Manifest.java

/**
 * Add a section ref with section Id sectionId.
 *
 * @param sectionId// w w w  .  j  av a2s .c o  m
 */
public void addSectionRef(String sectionId) {
    if (log.isDebugEnabled()) {
        log.debug("addSection(String " + sectionId + ")");
    }

    try {
        String xpath = basePath;
        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
        DocumentBuilder db = dbf.newDocumentBuilder();
        Document document = db.newDocument();
        Element element = document.createElement(QTIConstantStrings.SECTIONREF);
        element.setAttribute(QTIConstantStrings.LINKREFID, sectionId);
        this.addElement(xpath, element);
    } catch (ParserConfigurationException pce) {
        log.error("Exception thrown from addSectionRef() : " + pce.getMessage());
        pce.printStackTrace();
    }
}

From source file:org.sakaiproject.tool.assessment.qti.asi.ASIBaseClass.java

/**
 *
 *
 * @param xpath//w ww.  j av  a  2s. com
 * @param fieldlabel
 */
protected void createFieldentry(String xpath, String fieldlabel) {
    if (log.isDebugEnabled()) {
        log.debug("createFieldentry(String " + xpath + ", String " + fieldlabel + ")");
    }

    try {
        List qtimetadataNodes = this.selectNodes(xpath);
        if (qtimetadataNodes.size() > 0) {
            Node qtimetadataNode = (Node) qtimetadataNodes.get(0);
            DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
            DocumentBuilder db = dbf.newDocumentBuilder();
            Document newDocument = db.newDocument();

            Element qtimetadataField = newDocument.createElement(QTIConstantStrings.QTIMETADATAFIELD);
            Element fieldlabelElement = newDocument.createElement(QTIConstantStrings.FIELDLABEL);
            Element fieldentryElement = newDocument.createElement(QTIConstantStrings.FIELDENTRY);

            Text fieldlabelText = newDocument.createTextNode(QTIConstantStrings.FIELDLABEL);
            fieldlabelText.setNodeValue(fieldlabel);
            fieldlabelElement.appendChild(fieldlabelText);

            Text fieldentryText = newDocument.createTextNode(QTIConstantStrings.FIELDENTRY);
            fieldentryElement.appendChild(fieldentryText);

            Node importedFLE = qtimetadataField.getOwnerDocument().importNode(fieldlabelElement, true);
            Node importedFEE = qtimetadataField.getOwnerDocument().importNode(fieldentryElement, true);
            qtimetadataField.appendChild(importedFLE);
            qtimetadataField.appendChild(importedFEE);
            Node importedField = qtimetadataNode.getOwnerDocument().importNode(qtimetadataField, true);
            qtimetadataNode.appendChild(importedField);
        }
    } catch (ParserConfigurationException pce) {
        log.error("Exception thrown from createFieldentry()" + pce.getMessage(), pce);
        pce.printStackTrace();
    } catch (Exception ex) {
        log.error(ex.getMessage(), ex);
    }
}

From source file:org.sakaiproject.tool.assessment.qti.asi.Section.java

/**
 * ASI OKI implementation/* w ww .java2  s.  c o m*/
 *
 * @param itemId item id
 */
public void addItemRef(String itemId) {
    if (log.isDebugEnabled()) {
        log.debug("addItem(String " + itemId + ")");
    }

    try {
        String xpath = basePath;
        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
        DocumentBuilder db = dbf.newDocumentBuilder();
        Document document = db.newDocument();
        Element element = document.createElement(QTIConstantStrings.ITEMREF);
        element.setAttribute(QTIConstantStrings.LINKREFID, itemId);
        this.addElement(xpath, element);
    } catch (ParserConfigurationException pce) {
        log.error("Exception thrown from addItemRef() : " + pce.getMessage());
        pce.printStackTrace();
    }
}

From source file:org.sakaiproject.tool.assessment.qti.asi.Section.java

/**
 * add section ref/*from  w ww  .  j  av  a 2  s  . c  o  m*/
 *
 * @param sectionId section id
 */
public void addSectionRef(String sectionId) {
    if (log.isDebugEnabled()) {
        log.debug("addSection(String " + sectionId + ")");
    }
    try {
        String xpath = basePath;
        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
        DocumentBuilder db = dbf.newDocumentBuilder();
        Document document = db.newDocument();
        Element element = document.createElement(QTIConstantStrings.SECTIONREF);
        element.setAttribute(QTIConstantStrings.LINKREFID, sectionId);
        this.addElement(xpath, element);
    } catch (ParserConfigurationException pce) {
        log.error("Exception thrown from addSectionRef() : " + pce.getMessage());
        pce.printStackTrace();
    }
}

From source file:org.sakaiproject.tool.assessment.qti.util.XmlStringBuffer.java

/**
 * insert element//from  w  ww  .jav a  2  s. c o m
 *
 * @param afterNode
 * @param parentXpath
 * @param childXpath
 */
public void insertElement(String afterNode, String parentXpath, String childXpath) {
    try {
        String nextXpath = parentXpath + "/" + afterNode;

        //*************************************************************
        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
        DocumentBuilder db = dbf.newDocumentBuilder();
        Document document = db.newDocument();
        Element element = document.createElement(childXpath);

        //**************************************************************
        Element parent = null;
        List parentNodes = this.selectNodes(parentXpath);
        Iterator iteratorNext = parentNodes.iterator();
        while (iteratorNext.hasNext()) {
            parent = (Element) iteratorNext.next();
        }

        if (parent != null) {
            List nodes = this.selectNodes(nextXpath);
            Iterator iterator = nodes.iterator();
            Element nextSibling = null;
            while (iterator.hasNext()) {
                nextSibling = (Element) iterator.next();
            }

            if ((nextSibling != null) && !nextSibling.getOwnerDocument().equals(element.getOwnerDocument())) {
                element = (Element) parent.getOwnerDocument().importNode(element, true);
                parent.insertBefore(element, nextSibling);
            }
        }
    } catch (ParserConfigurationException pce) {
        log.error("Exception thrown from insertElement() : " + pce.getMessage());
        pce.printStackTrace();
    }
}