title: get an element deep within a soap response
body: <p>Ok, so I am getting the following as the soap response:</p>
  
  <pre><code>&lt;s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"&gt;
      &lt;s:Body&gt;
          &lt;GetCustomerDetailsByDeviceNumberResponse xmlns="http://services.domain.com/SelfCare"&gt;
              &lt;GetCustomerDetailsByDeviceNumberResult xmlns:a="http://datacontracts.domain.com/SelfCare" 
                xmlns:i="http://www.w3.org/2001/XMLSchema-instance"&gt;
                  &lt;a:AuditReferenceNumber i:nil="true"/&gt;
                      &lt;a:accounts&gt;
                          &lt;a:Account&gt;
                              &lt;a:lastInvoiceAmount&gt;0&lt;/a:lastInvoiceAmount&gt;
                          &lt;a:lastInvoiceDate&gt;0001-01-01T00:00:00&lt;/a:lastInvoiceDate&gt;
                      &lt;/a:Account&gt;
                  &lt;/a:accounts&gt;
              &lt;/GetCustomerDetailsByDeviceNumberResult&gt;
          &lt;/GetCustomerDetailsByDeviceNumberResponse&gt;
      &lt;/s:Body&gt;
  &lt;/s:Envelope&gt;
  </code></pre>
  
  <p>I am trying to get the value of <code>&lt;a:lastInvoiceDate&gt;&lt;/a:lastInvoiceDate&gt;</code> with this piece of code:</p>
  
  <pre><code>SOAPBody sBody = response.getSOAPBody();
  QName gcdbdbr = new QName("http://services.domain.com/SelfCare", "GetCustomerDetailsByDeviceNumberResponse");
  java.util.Iterator iterator = sBody.getChildElements(gcdbdbr);
  while(iterator.hasNext()){
        NodeList nodeList = sBody.getElementsByTagName("lastInvoiceDate");
        Element element = (Element) nodeList.item(0);
        Node child = element.getFirstChild();
        String data = child.getTextContent();
        System.out.println(data);
  }
  </code></pre>
  
  <p>but it's empty. </p>
  
  <p>How do I get the value of <code>&lt;a:lastInvoiceDate&gt;</code>?</p>