on ‎2015 Dec 09 6:11 AM
Hi Experts,
I need to create the below xml structure , but i am not able to create it exactly kindly help me in creating it.
I am able to create a below structure but without namespace prefix like URN
XML required :-
<!--Zero or more repetitions:-->
<urn:majorNumber>?</urn:majorNumber>
<urn:minorNumber>?</urn:minorNumber>
<urn:namespace>?</urn:namespace>
<urn:updateMru>?</urn:updateMru>
<urn:batchSize>?</urn:batchSize>
<urn:sessionId>?</urn:sessionId>
<urn:queryString>?</urn:queryString>
Kindly help me in solving the issue.
Request clarification before answering.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Vijay,
I've modified your code a little bit:
import java.io.*;
import java.net.MalformedURLException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
//import org.apache.cxf.binding.soap.SoapHeader;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
public class Test {
private static Element createElement(String name, Element el, Document doc){
Element element = doc.createElement(name);
el.appendChild(element);
return element;
}
private static void createElement(String name, Element el, Document doc, String value){
Element element = doc.createElement(name);
el.appendChild(element);
if(!value.equals("")){
element.setTextContent(value);
}
}
public static void main(String args[]) throws ParserConfigurationException, TransformerException, MalformedURLException{
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
dbf.setNamespaceAware(true);
dbf.setIgnoringElementContentWhitespace(true);
dbf.setValidating(false);
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.newDocument();
Element Envelope = doc.createElementNS("http://schemas.xmlsoap.org/soap/envelope/", "Envelope");
Envelope.setPrefix("soapenv");
Envelope.setAttribute("xmlns:urn", "urn:enterprise.soap.sforce.com");
Element Header=createElement("soapenv:Header",Envelope,doc);
Element PackageVersionHeader=createElement("urn:PackageVersionHeader",Header,doc);
Element PackageVersions=createElement("urn:PackageVersions",PackageVersionHeader,doc);
createElement("urn:majorNumber",PackageVersions,doc,"0");
createElement("urn:minorNumber",PackageVersions,doc,"2");
createElement("urn:namespace",PackageVersions,doc,"Vijay");
Element MruHeader=createElement("urn:MruHeader",Header,doc);
createElement("urn:updateMru",MruHeader,doc,"1");
Element QueryOptions=createElement("urn:QueryOptions",Header,doc);
createElement("urn:batchSize",QueryOptions,doc,"1");
Element SessionHeader=createElement("urn:SessionHeader",Header,doc);
createElement("urn:sessionId",SessionHeader,doc,"Vijay");
Element Body=createElement("soapenv:Body",Envelope,doc);
Element query=createElement("urn:query",Body,doc);
createElement("urn:queryString",query,doc,"queryString");
StringWriter sw = new StringWriter();
StreamResult result = new StreamResult(sw);
DOMSource source = new DOMSource(Envelope);
TransformerFactory tf = TransformerFactory.newInstance();
Transformer transformer = tf.newTransformer();
transformer.transform(source, result);
String xmlString = sw.toString();
System.out.println(xmlString);
}
}
Output
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:urn="urn:enterprise.soap.sforce.com" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header>
<urn:PackageVersionHeader>
<urn:PackageVersions>
<urn:majorNumber>0</urn:majorNumber>
<urn:minorNumber>2</urn:minorNumber>
<urn:namespace>Vijay</urn:namespace>
</urn:PackageVersions>
</urn:PackageVersionHeader>
<urn:MruHeader>
<urn:updateMru>1</urn:updateMru>
</urn:MruHeader>
<urn:QueryOptions>
<urn:batchSize>1</urn:batchSize>
</urn:QueryOptions>
<urn:SessionHeader>
<urn:sessionId>Vijay</urn:sessionId>
</urn:SessionHeader>
</soapenv:Header>
<soapenv:Body>
<urn:query>
<urn:queryString>queryString</urn:queryString>
</urn:query>
</soapenv:Body>
</soapenv:Envelope>
Regards,
Mark
| User | Count |
|---|---|
| 6 | |
| 6 | |
| 4 | |
| 4 | |
| 3 | |
| 2 | |
| 2 | |
| 2 | |
| 2 | |
| 2 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.