栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

PO JAVA MAPPING

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

PO JAVA MAPPING

1 , PO Java Mapping 相关包,可以从 PO NWA 直接获取,方便本地测试

http://:/rep/repository/com.sap.xi.mapping.tool.lib_api.jar

​​​​​​http://:/rep/repository/com.sap.xpi.ib.mapping.lib.jar

2,直接实现接口  AbstractTransformation

以下为XML转JSON格式,无外层节点,直接为数据内容部分。

package com.demo.edi;

import java.io.InputStream;
import java.io.OutputStream;

import org.dom4j.document;
import org.dom4j.io.SAXReader;

import com.sap.aii.mapping.api.AbstractTransformation;
import com.sap.aii.mapping.api.DynamicConfiguration;
import com.sap.aii.mapping.api.DynamicConfigurationKey;
import com.sap.aii.mapping.api.StreamTransformationConstants;
import com.sap.aii.mapping.api.StreamTransformationException;
import com.sap.aii.mapping.api.TransformationInput;
import com.sap.aii.mapping.api.TransformationOutput;

import net.sf.json.JSON;
import net.sf.json.JSONObject;
import net.sf.json.xml.XMLSerializer;

public class LEDIBean extends AbstractTransformation {

	public LEDIBean() {
	}
	
	private static final DynamicConfigurationKey MESSAGE_ID = DynamicConfigurationKey
			.create("http://sap.com/xi/XI/System/REST", "msgid");
	
	public void transform(TransformationInput in, TransformationOutput out) throws StreamTransformationException {
		InputStream inputStream;
		OutputStream outputStream;
		inputStream = null;
		outputStream = null;

		String res = "";
		
		DynamicConfiguration conf = in.getDynamicConfiguration();
		conf.put(MESSAGE_ID, StreamTransformationConstants.MESSAGE_ID);

		try {
			SAXReader reader = new SAXReader();
			inputStream = in.getInputPayload().getInputStream();
			document document = reader.read(inputStream);
			res = xml2json(document.asXML());
			JSonObject json = JSONObject.fromObject(res);
			res = json.getString("goodsReceipts");
			out.getOutputHeader().setContentType("text/plain; charset=UTF-8");
			outputStream = out.getOutputPayload().getOutputStream();
			outputStream.write(res.getBytes("UTF-8"));
			outputStream.flush();
		}catch(Exception e){
			e.printStackTrace();
		}
	}
	
	public static String xml2json(String xml) {

		String jsonStr = "";

		XMLSerializer xmlSerializer = new XMLSerializer();
		xmlSerializer.setSkipWhitespace(true);
		xmlSerializer.setSkipNamespaces(true);
		JSON json = xmlSerializer.read(xml);
		jsonStr = json.toString(0);
		System.out.println(jsonStr);
		return jsonStr;
	}
	
}

3,发布为jar( 或者直接打包为 ZIP压缩包 ),导入PO ESR,即可使用JAVA MAPPING。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/782030.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号