2016-07-26 30 views
0

フォームから取得したデータをXMLファイルに書き込もうとしていますが、新しいファイルを作成してデータを書きたい場合、そのファイルをこれは私が試みたものです。私はここでサーブレットからXMLファイルに書き込む

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(); 
    } 


} 
+5

OKを動作するはずこれを試して成功している私は、HttpRequestのを通じて受け付けておりますものは何でも追加したいと思います。それがあなたの必要条件です。あなたの質問は何ですか? XMLをファイルに出力し、標準出力に出力しないようにするために、なぜSystem.outにファイルを出力するのではなく、ファイル出力ストリームに書き込むのですか? –

答えて

1

が最後にそれが

// XMLファイルに内容を書く

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);