dbf.setNamespaceAware(true);
Document doc = dbf.newDocumentBuilder().parse(inSource);
root = (Node) doc.getDocumentElement();
}
Transformer transformer = TransformerFactory.newInstance()
.newTransformer();
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.transform(new DOMSource(root), new StreamResult(
System.out));
}
}
public Source informResponse(SOAPPart part) throws Exception {
SOAPEnvelope soapEnvelope = part.getEnvelope();
SOAPBody soapBody = soapEnvelope.getBody();
SOAPElement informRes = soapBody.addChildElement("InformResponse",
"cwmp");
SOAPElement max = SOAPFactory.newInstance().createElement(
"MaxEnvelopes", "", "");
max.setTextContent("1");
informRes.addChildElement(max);
return part.getContent();
}
public Source getParameterValues(SOAPPart part, List list) throws Exception {
SOAPEnvelope soapEnvelope = part.getEnvelope();
SOAPBody soapBody = soapEnvelope.getBody();
SOAPElement informRes = soapBody.addChildElement("GetParameterValues",
"cwmp");
SOAPFactory soapFactory = SOAPFactory.newInstance();
SOAPElement names = soapFactory.createElement("ParameterNames", "", "");
names.addAttribute(new QName("SOAP-ENC:arrayType"), "xsd:string["
+ list.size() + "]");
SOAPElement nameElement = null;
for (int i = 0; i < list.size(); i++) {
nameElement = soapFactory.createElement("string", "", "");
nameElement.setTextContent((String) list.get(i));
names.addChildElement(nameElement);
}
informRes.addChildElement(names);
return part.getContent();
}
public static void main(String[] args) throws Exception {
SoapUtil util = new SoapUtil();
SOAPPart part = util.initSoapPart();
Source inform = util.getParameterValues(part, util.getTestnames());
util.soap2String(inform);
}