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

Re: Need Java Mapping Code for Extended Receiver Determination in sap pi 7.31

$
0
0

Hello Neha,

Check below code and modify it as per ur req.

 

package test;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
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;
import java.io.IOException;
import org.xml.sax.SAXException;
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;
import com.sap.aii.utilxi.core.io.IOUtil;


public class RemoveTag extends AbstractTransformation {

    public void transform(TransformationInput input, TransformationOutput output)    throws StreamTransformationException {        try {            this.execute(input.getInputPayload().getInputStream(), output.getOutputPayload().getOutputStream()) ;        } catch (SAXException e) {            // TODO Auto-generated catch block            e.printStackTrace();        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }    }    public void execute(InputStream in,OutputStream out) throws StreamTransformationException, SAXException, IOException {            try        {        String inputPayload = IOUtil.copyToString(in, "UTF-8");                String XMLDeclaration = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";        String header = "<ns1:Receivers xmlns:ns1=\"http://sap.com/xi/XI/System\">";        String ReceiverStr ="";                if(inputPayload.indexOf("<response>")>=0)        {        ReceiverStr =  XMLDeclaration + header + "<Receiver>" + "<Service>"+ "BC1" + "</Service>" + "</Receiver>" + "</ns1:Receivers>";            }        else if(inputPayload.indexOf("<action>")>=0)        {        ReceiverStr =  XMLDeclaration + header + "<Receiver>" + "<Service>"+ "BC2" + "</Service>" + "</Receiver>" + "</ns1:Receivers>";                        }                else        {            throw new StreamTransformationException("No Business Componenet dtermined");        }    out.write(ReceiverStr.getBytes());        }        catch(Exception e) {             throw new StreamTransformationException(e.toString());        }    }    public static void main(String[] args) {                 try{            RemoveTag genFormat=new RemoveTag();             FileInputStream in=new FileInputStream("C:\\Users\\amitsrivastava\\Desktop\\input.xml");             FileOutputStream out=new FileOutputStream("C:\\Users\\amitsrivastava\\Desktop\\output.xml");             genFormat.execute(in,out);             }             catch(Exception e)             {             e.printStackTrace();             }   }    }

 

Thanks

Amit Srivastava


Viewing all articles
Browse latest Browse all 9369

Trending Articles



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