/** * 封裝soap資料 * @return * @throws SOAPException */public String initSoapData() throws Exception{SOAPMessage soapmessage = MessageFactory.newInstance().createMessage();SOAPPart soappart = soapmessage.getSOAPPart();SOAPEnvelope soapenvelope = soappart.getEnvelope();SOAPHeader soapheader = soapenvelope.getHeader();soapenvelope.addNamespaceDeclaration("rec","http://cebpubservice.com/ReceiveService");SOAPElement id = soapheader.addChildElement("Token", "rec").addChildElement("Token", "rec");id.setTextContent("XXX內容。。。。。。");SOAPBody soapbody = soapenvelope.getBody();SOAPElement informres = soapbody.addChildElement("Receive","rec");informres.addChildElement("節點名稱","rec").setTextContent("M1420110010268");//一次添加更多內容informres.addChildElement("節點名稱","rec").setTextContent(new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS").format(new Date())+"+08:00");Source source = soappart.getContent();Node root = null;if (source instanceof DOMSource) {root = ((DOMSource) source).getNode();} else if (source instanceof SAXSource) {InputSource insource = ((SAXSource) source).getInputSource();DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();dbf.setNamespaceAware(true);Document doc = dbf.newDocumentBuilder().parse(insource);root = (Node) doc.getDocumentElement();}Transformer transformer = TransformerFactory.newInstance().newTransformer();transformer.setOutputProperty(OutputKeys.ENCODING, "utf-8" ); transformer.setOutputProperty(OutputKeys.INDENT, "yes");transformer.setOutputProperty( OutputKeys.METHOD, "html" ); DOMSource domsource = new DOMSource(root);StreamResult streamResult = new StreamResult();ByteArrayOutputStream baos = new ByteArrayOutputStream();streamResult.setOutputStream(baos);transformer.transform(domsource, streamResult);return baos.toString();}