assertEquals("http://gizmos.com/order", fault.getFaultActor());
//Add Fault Detail information
Detail faultDetail = fault.addDetail();
Name cwmpFaultName = envelope.createName("Fault", "cwmp", "http://cwmp.com");
DetailEntry faultDetailEntry = faultDetail.addDetailEntry(cwmpFaultName);
SOAPElement e = faultDetailEntry.addChildElement("FaultCode");
e.addTextNode("This is the fault code");
SOAPElement e2 = faultDetailEntry.addChildElement(envelope.createName("FaultString",
"cwmp",
"http://cwmp.com"));
e2.addTextNode("Fault Message");
SOAPElement e3 = faultDetailEntry.addChildElement("Message");
e3.addTextNode("This is a test fault");
soapMessage.saveChanges();
// ------------------- Validate the contents -------------------------------------
final Detail detail = fault.getDetail();
final Iterator detailEntryIter = detail.getDetailEntries();
boolean foundFirst = false;
boolean foundSecond = false;
boolean foundThird = false;
while (detailEntryIter.hasNext()) {
final DetailEntry detailEntry = (DetailEntry)detailEntryIter.next();
final Iterator childElementsIter = detailEntry.getChildElements();
while (childElementsIter.hasNext()) {
final SOAPElement soapElement = (SOAPElement)childElementsIter.next();
if (soapElement.getTagName().equals("FaultCode") &&
soapElement.getValue().equals("This is the fault code")) {
foundFirst = true;