Quantcast
Channel: SCN: Message List
Viewing all articles
Browse latest Browse all 3116

Re: DOM Parsing concatenate help required

$
0
0

Hi Rashmi,

 

You can use below java mapping.

 

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import com.sap.aii.mapping.api.AbstractTransformation;
import com.sap.aii.mapping.api.StreamTransformationException;
import com.sap.aii.mapping.api.TransformationInput;
import com.sap.aii.mapping.api.TransformationOutput;
public class ConcatJavaMap extends AbstractTransformation {  public static void main(String[] args) throws StreamTransformationException, FileNotFoundException {  ConcatJavaMap concat = new ConcatJavaMap();  FileInputStream input = new FileInputStream("input.xml");  FileOutputStream output = new FileOutputStream("output.xml");  concat.execute(input, output);  }  @Override  public void transform(TransformationInput transformationInput, TransformationOutput transformationOutput)  throws StreamTransformationException {  execute(transformationInput.getInputPayload().getInputStream(), transformationOutput.getOutputPayload().getOutputStream());  }  public void execute(InputStream input, OutputStream output) throws StreamTransformationException {  String name = "", surname = "";  String RESULT = new String();  try {  Document doc = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(input);  NodeList nameList = doc.getElementsByTagName("Emp_Name");  if (nameList.getLength() > 0)  name = nameList.item(0).getTextContent();  NodeList surNameList = doc.getElementsByTagName("Emp_Surname");  if (surNameList.getLength() > 0)  surname = surNameList.item(0).getTextContent();  RESULT = name + " " + surname;  String document_exit = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"  + "<ns0:MT_SJava_Concanat xmlns:ns0=urn:javaMapping.com/Rashmi>" + "<Records> <EmployeeID/> <RESULT>"  + RESULT + "</RESULT> </Records>";  output.write(document_exit.getBytes());  } catch (Exception e) {  getTrace().addDebugMessage(e.getMessage());  throw new StreamTransformationException(e.getMessage());  }  }
}

Regards,

Praveen.


Viewing all articles
Browse latest Browse all 3116

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>