0

I am trying to write some data picked up from a form onto XML file, each time I want the new file to be created and data to be written and I want those files to be stored in specific folder this is what i have tried. I would like to add whatever I am receiving through httpRequest is successful

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
{
    String hostIPAddress=request.getParameter("hostIPAddress");
    String destinationIPAddressTool1=request.getParameter("IPtool1");
    String destinationIPAddressTool2=request.getParameter("IPtool2");
    String root="root";
    String hostIPElement="Host-IP";
    String tool1Element="Tool-1";
    String tool2Element="Tool-2";
    if(destinationIPAddressTool1 == null)
    {
        destinationIPAddressTool1="none";
    }

    if(destinationIPAddressTool2 == null)
    {
        destinationIPAddressTool2="none";
    }

    DocumentBuilderFactory documentBuilderFactory=DocumentBuilderFactory.newInstance();
    DocumentBuilder documentBuilder = null;
    try {
        documentBuilder = documentBuilderFactory.newDocumentBuilder();
    } catch (ParserConfigurationException e) {

        e.printStackTrace();
    }
    Document document = documentBuilder.newDocument();
    Element rootElement = document.createElement(root);
    document.appendChild(rootElement);

    Element em1 = document.createElement(hostIPElement);
    em1.appendChild(document.createTextNode(hostIPAddress));
    rootElement.appendChild(em1);

    Element em2 = document.createElement(tool1Element);
    em2.appendChild(document.createTextNode(destinationIPAddressTool1));
    rootElement.appendChild(em2);

    Element em3 = document.createElement(tool2Element);
    em3.appendChild(document.createTextNode(destinationIPAddressTool2));
    rootElement.appendChild(em3);

    TransformerFactory transformerFactory = TransformerFactory.newInstance();
    Transformer transformer = null;
    try {
        transformer = transformerFactory.newTransformer();
    } catch (TransformerConfigurationException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    DOMSource source = new DOMSource(document);
    StreamResult result =  new StreamResult(System.out);
    try {
        transformer.transform(source, result);
    } catch (TransformerException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }


}
Monk
  • 64
  • 6
  • 5
    OK. That's your requirement. What is your question? Why are you writing to System.out, and not to a file output stream, since you want the XML to go to a file, and not to the standard output? – JB Nizet Jul 26 '16 at 10:11

1 Answers1

1

here try this in the end it should work

// write the content into xml file

TransformerFactory transformerFactory = TransformerFactory.newInstance();
          Transformer transformer = transformerFactory.newTransformer();
          DOMSource source = new DOMSource(doc);
          StreamResult result = new StreamResult(new File("file.xml"));

          // Output to console for testing
          // StreamResult result = new StreamResult(System.out);

          transformer.transform(source, result);
Akshay Bhat
  • 236
  • 3
  • 16