Commit 7792d9a1 authored by Quxl's avatar Quxl

x

parent ea5df8e1
...@@ -18,8 +18,7 @@ import org.springframework.beans.factory.annotation.Value; ...@@ -18,8 +18,7 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import com.egolm.sso.services.material_master.MaterialMasterService; import com.egolm.sso.service.MaterialMasterService;
import com.egolm.sso.services.price_list.PriceListService;
@Configuration @Configuration
...@@ -38,13 +37,6 @@ public class WsConfig { ...@@ -38,13 +37,6 @@ public class WsConfig {
return endpoint; return endpoint;
} }
@Bean
public Endpoint getPriceListPoint(PriceListService service) {
EndpointImpl endpoint = new EndpointImpl(bus, service);
endpoint.publish("/price_list");
return endpoint;
}
@Value("${wsUsername}") @Value("${wsUsername}")
private String wsUername; private String wsUername;
......
package com.egolm.sso.services.material_master; package com.egolm.sso.service;
import javax.jws.WebMethod; import javax.jws.WebMethod;
import javax.jws.WebService; import javax.jws.WebService;
@WebService(targetNamespace = "http://material_master.sso.egolm.com") @WebService(targetNamespace = "http://service.sso.egolm.com")
public interface MaterialMasterService { public interface MaterialMasterService {
@WebMethod @WebMethod
public void execute(Z_MI_SD_001_MATERIAL_MASTER Z_MI_SD_001_MATERIAL_MASTER); public void execute(String xml);
} }
package com.egolm.sso.service.impl;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import javax.jws.WebService;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import com.alibaba.fastjson.JSON;
import com.egolm.sso.service.CommonService;
import com.egolm.sso.service.MaterialMasterService;
@Component
@WebService(serviceName = "MaterialMasterService", targetNamespace = "http://service.sso.egolm.com", endpointInterface = "com.egolm.sso.service.MaterialMasterService")
public class MaterialMasterServiceImpl implements MaterialMasterService {
@Autowired
JdbcTemplate jdbcTemplate;
@Autowired
CommonService common;
private static DateFormat datef = new SimpleDateFormat("yyyyMMdd");
private static DateFormat datetimef = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
private static DateFormat timef = new SimpleDateFormat("HHmmss");
@Override
public void execute(String xml) {
System.out.println(common.getNextval("Test"));
System.out.println(xml);
Element record = getRecordElement(xml);
Map<String, String> header = new HashMap<>();
Element headerSending = record.element("HEADER_SENDING");
String DIS_CODE = headerSending.elementText("KUNNR");
String DATUM = headerSending.elementText("DATUM");
String UZEIT = headerSending.elementText("UZEIT");
List<Map<String, String>> items = new ArrayList<>();
List<Element> itemList = record.elements("ITEM");
try {
for (Element element : itemList) {
String GOODS_CODE = element.elementText("MATNR");
Map<String, Object> goods = getGoods(DIS_CODE, GOODS_CODE);
if(goods == null) {
goods = new HashMap<>();
}
/***************header**************/
goods.put("DIS_CODE", DIS_CODE);
goods.put("DATUM", datef.parse(DATUM));
goods.put("UZEIT", timef.parse(UZEIT));
/***************header**************/
/***************item**************/
goods.put("GOODS_CODE", GOODS_CODE);
goods.put("ROUGH_WEIGHT", element.elementText("BRGEW"));
goods.put("NET_WEIGHT", element.elementText("NTGEW"));
goods.put("WETGHT_UNIT", element.elementText("GEWEI"));
goods.put("CATEGORY_CODE", element.elementText("PLINE"));
goods.put("CREATION_DATE", datef.parse(element.elementText("ERSDA")));
goods.put("LAST_CHANGE_DATE", datef.parse(element.elementText("LAEDA")));
goods.put("GOODS_NAME", element.elementText("NORMT"));
goods.put("VMSTA", element.elementText("VMSTA"));
goods.put("MSTAV", element.elementText("MSTAV"));
goods.put("STKTYP", element.elementText("STKTYP"));
goods.put("PRODUCTION_LINE_CODE", element.elementText("LIFNR"));
goods.put("SPEC", element.elementText("UMREZ"));
/*******************新增字段,样例中没有******************/
goods.put("GOODS_NAME_EN", element.elementText("NORMT_EN"));
goods.put("AUMNG", element.elementText("AUMNG"));
goods.put("VRKME", element.elementText("VRKME"));
goods.put("BASE_UNIT", element.elementText("MEINS"));
goods.put("STATISTICS_UNIT", element.elementText("SCHME"));//(统计单位--》发货单位)
goods.put("LAENG", element.elementText("LAENG"));
goods.put("BREIT", element.elementText("BREIT"));
goods.put("HOEHE", element.elementText("HOEHE"));
goods.put("MEABM", element.elementText("MEABM"));
goods.put("LAENG_B", element.elementText("LAENG_B"));
goods.put("BREIT_B", element.elementText("BREIT_B"));
goods.put("HOEHE_B", element.elementText("HOEHE_B"));
goods.put("MEABM_B", element.elementText("MEABM_B"));
goods.put("PUBLIC", element.elementText("PUBLIC"));
goods.put("INTERNET", element.elementText("INTERNET"));
/*******************新增字段,样例中没有******************/
/***************item**************/
String BATCH = (String) goods.get("BATCH");
if(BATCH==null||"".equals(BATCH.trim())) {
BATCH = datef.format(new Date())+"-1";
}else {
String[] ss = BATCH.split("-");
String newDate = datef.format(new Date());
int v = 1;
if(ss[0].equals(newDate)) {
v = Integer.valueOf(ss[1])+1;
}
BATCH = newDate+"-"+v;
}
goods.put("BATCH", BATCH);
goods.put("SEND_STATUS", "N");
goods.put("UPDATED", datetimef.format(new Date()));
if(goods.get("ID")!=null) {
updateGoods(goods);
}else {
insertGoods(goods);
}
}
}catch(Exception e) {
e.printStackTrace();
}
}
private void updateGoods(Map<String, Object> goods) {
goods.put("UPDATEDBY", "");
String sql = "update t_ven_goods set ";
List<Object> args = new ArrayList<>();
for (Entry<String, Object> entry : goods.entrySet()) {
String key = entry.getKey();
Object value = entry.getValue();
if(!key.equals("ID")) {
sql = sql + key + " = ?, ";
args.add(value);
}
}
sql = sql.substring(0, sql.length()-2);
sql = sql + " where ID = ?";
args.add(goods.get("ID"));
jdbcTemplate.update(sql, args);
}
private void insertGoods(Map<String, Object> goods) {
String countSql = "select count(1) from t_ven_goods";
Integer count = jdbcTemplate.queryForObject(countSql, Integer.class);
String ID = System.currentTimeMillis() + prependZero(count, 5);
goods.put("ID", ID);
goods.put("CREATED", datetimef.format(new Date()));
goods.put("CREATEDBY", "");
String insertSql = "insert into t_ven_goods ";
String fieldSql = "(";
String valuesSql = "(";
List<Object> values = new ArrayList<>();
for(Entry<String, Object> entry : goods.entrySet()) {
fieldSql = fieldSql + entry.getKey() + ", ";
valuesSql = valuesSql + "?, ";
values.add(entry.getValue());
}
fieldSql = fieldSql.substring(0, fieldSql.length()-2);
valuesSql = valuesSql.substring(0, valuesSql.length()-2);
insertSql = insertSql + fieldSql + ") values " + valuesSql + ")";
jdbcTemplate.update(insertSql, values);
}
private String prependZero(int Num, int length) {
return prependZero(Num+"", length);
}
private String prependZero(String Num, int length) {
String prepend = "";
for(int i=Num.length(); i<=length; i++) {
prepend = prepend + "0";
}
return prepend + Num;
}
private Map<String, Object> getGoods(String DIS_CODE, String GOODS_CODE){
String sql = "select * from t_ven_goods where DIS_CODE = ? and GOODS_CODE = ?";
List<Map<String, Object>> list = jdbcTemplate.queryForList(sql, DIS_CODE, GOODS_CODE);
if(list!=null&&list.size()>0) {
return list.get(0);
}
return null;
}
public static Element getRecordElement(String xml) {
Document doc = null;
Element el = null;
try {
doc = DocumentHelper.parseText(xml);
Element root = doc.getRootElement();
el = root.element("RECORD");
} catch (DocumentException e) {
e.printStackTrace();
}
return el;
}
}
package com.egolm.sso.services.material_master;
import javax.jws.WebService;
import org.springframework.stereotype.Component;
import com.google.gson.Gson;
@Component
@WebService(serviceName = "MaterialMasterService", targetNamespace = "http://material_master.sso.egolm.com", endpointInterface = "com.egolm.sso.services.material_master.MaterialMasterService")
public class MaterialMasterServiceImpl implements MaterialMasterService {
@Override
public void execute(Z_MI_SD_001_MATERIAL_MASTER Z_MI_SD_001_MATERIAL_MASTER) {
System.out.println(new Gson().toJson(Z_MI_SD_001_MATERIAL_MASTER));
}
}
package com.egolm.sso.services.material_master;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Z_MI_SD_001_MATERIAL_MASTER", propOrder = { "RECORD" })
public class Z_MI_SD_001_MATERIAL_MASTER {
@XmlElement(name = "RECORD", required = true)
protected Z_MI_SD_001_MATERIAL_MASTER.RECORD RECORD;
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = { "HEADER_SENDING", "ITEM" })
public static class RECORD {
@XmlElement(name = "HEADER_SENDING", required = true)
protected Z_MI_SD_001_MATERIAL_MASTER.RECORD.HEADER_SENDING HEADER_SENDING;
@XmlElement(name = "ITEM", required = true)
protected List<Z_MI_SD_001_MATERIAL_MASTER.RECORD.ITEM> ITEM;
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = { "KUNNR", "DATUM", "UZEIT" })
public static class HEADER_SENDING {
@XmlElement(name = "KUNNR")
protected String KUNNR;
@XmlElement(name = "DATUM")
protected String DATUM;
@XmlElement(name = "UZEIT")
protected String UZEIT;
public String getKUNNR() {
return KUNNR;
}
public void setKUNNR(String kUNNR) {
KUNNR = kUNNR;
}
public String getDATUM() {
return DATUM;
}
public void setDATUM(String dATUM) {
DATUM = dATUM;
}
public String getUZEIT() {
return UZEIT;
}
public void setUZEIT(String uZEIT) {
UZEIT = uZEIT;
}
}
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = { "MATNR", "BRGEW", "NTGEW", "GEWEI", "PLINE", "ERSDA", "LAEDA", "NORMT", "LIFNR", "VMSTA", "MSTAV", "STKTYP", "UMREZ" })
public static class ITEM {
@XmlElement(name = "MATNR")
protected String MATNR;
@XmlElement(name = "BRGEW")
protected String BRGEW;
@XmlElement(name = "NTGEW")
protected String NTGEW;
@XmlElement(name = "GEWEI")
protected String GEWEI;
@XmlElement(name = "PLINE")
protected String PLINE;
@XmlElement(name = "ERSDA")
protected String ERSDA;
@XmlElement(name = "LAEDA")
protected String LAEDA;
@XmlElement(name = "NORMT")
protected String NORMT;
@XmlElement(name = "LIFNR")
protected String LIFNR;
@XmlElement(name = "VMSTA")
protected String VMSTA;
@XmlElement(name = "MSTAV")
protected String MSTAV;
@XmlElement(name = "STKTYP")
protected String STKTYP;
@XmlElement(name = "UMREZ")
protected String UMREZ;
public String getMATNR() {
return MATNR;
}
public void setMATNR(String mATNR) {
MATNR = mATNR;
}
public String getBRGEW() {
return BRGEW;
}
public void setBRGEW(String bRGEW) {
BRGEW = bRGEW;
}
public String getNTGEW() {
return NTGEW;
}
public void setNTGEW(String nTGEW) {
NTGEW = nTGEW;
}
public String getGEWEI() {
return GEWEI;
}
public void setGEWEI(String gEWEI) {
GEWEI = gEWEI;
}
public String getPLINE() {
return PLINE;
}
public void setPLINE(String pLINE) {
PLINE = pLINE;
}
public String getERSDA() {
return ERSDA;
}
public void setERSDA(String eRSDA) {
ERSDA = eRSDA;
}
public String getLAEDA() {
return LAEDA;
}
public void setLAEDA(String lAEDA) {
LAEDA = lAEDA;
}
public String getNORMT() {
return NORMT;
}
public void setNORMT(String nORMT) {
NORMT = nORMT;
}
public String getLIFNR() {
return LIFNR;
}
public void setLIFNR(String lIFNR) {
LIFNR = lIFNR;
}
public String getVMSTA() {
return VMSTA;
}
public void setVMSTA(String vMSTA) {
VMSTA = vMSTA;
}
public String getMSTAV() {
return MSTAV;
}
public void setMSTAV(String mSTAV) {
MSTAV = mSTAV;
}
public String getSTKTYP() {
return STKTYP;
}
public void setSTKTYP(String sTKTYP) {
STKTYP = sTKTYP;
}
public String getUMREZ() {
return UMREZ;
}
public void setUMREZ(String uMREZ) {
UMREZ = uMREZ;
}
}
public Z_MI_SD_001_MATERIAL_MASTER.RECORD.HEADER_SENDING getHEADER_SENDING() {
return HEADER_SENDING;
}
public void setHEADER_SENDING(Z_MI_SD_001_MATERIAL_MASTER.RECORD.HEADER_SENDING hEADER_SENDING) {
HEADER_SENDING = hEADER_SENDING;
}
public List<Z_MI_SD_001_MATERIAL_MASTER.RECORD.ITEM> getITEM() {
return ITEM;
}
public void setITEM(List<Z_MI_SD_001_MATERIAL_MASTER.RECORD.ITEM> iTEM) {
ITEM = iTEM;
}
}
public Z_MI_SD_001_MATERIAL_MASTER.RECORD getRECORD() {
return RECORD;
}
public void setRECORD(Z_MI_SD_001_MATERIAL_MASTER.RECORD rECORD) {
RECORD = rECORD;
}
}
package com.egolm.sso.services.perform_invoice;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Z_MI_SD_005_PERFORM_INVOICE", propOrder = { "RECORD" })
public class Z_MI_SD_005_PERFORM_INVOICE {
@XmlElement(name = "RECORD", required = true)
protected Z_MI_SD_005_PERFORM_INVOICE.RECORD RECORD;
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = { "HEADER_SENDING", "ITEM" })
public static class RECORD {
@XmlElement(name = "HEADER_SENDING", required = true)
protected Z_MI_SD_005_PERFORM_INVOICE.RECORD.HEADER_SENDING HEADER_SENDING;
@XmlElement(name = "ITEM", required = true)
protected List<Z_MI_SD_005_PERFORM_INVOICE.RECORD.ITEM> ITEM;
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = { "KUNNR", "DATUM", "UZEIT" })
public static class HEADER_SENDING {
@XmlElement(name = "KUNNR")
protected String KUNNR;
@XmlElement(name = "DATUM")
protected String DATUM;
@XmlElement(name = "UZEIT")
protected String UZEIT;
public String getKUNNR() {
return KUNNR;
}
public void setKUNNR(String kUNNR) {
KUNNR = kUNNR;
}
public String getDATUM() {
return DATUM;
}
public void setDATUM(String dATUM) {
DATUM = dATUM;
}
public String getUZEIT() {
return UZEIT;
}
public void setUZEIT(String uZEIT) {
UZEIT = uZEIT;
}
}
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = { "MATNR", "KBETR", "KONWA", "KPEIN", "KMEIN", "UMREZ", "MAKTX", "PRSCH", "DATAM", "DATBI", "PLINE", "PRSCH_1" })
public static class ITEM {
@XmlElement(name = "MATNR")
protected String MATNR;
@XmlElement(name = "KBETR")
protected String KBETR;
@XmlElement(name = "KONWA")
protected String KONWA;
@XmlElement(name = "KPEIN")
protected String KPEIN;
@XmlElement(name = "KMEIN")
protected String KMEIN;
@XmlElement(name = "UMREZ")
protected String UMREZ;
@XmlElement(name = "MAKTX")
protected String MAKTX;
@XmlElement(name = "PRSCH")
protected String PRSCH;
@XmlElement(name = "DATAM")
protected String DATAM;
@XmlElement(name = "DATBI")
protected String DATBI;
@XmlElement(name = "PLINE")
protected String PLINE;
@XmlElement(name = "PRSCH_1")
protected String PRSCH_1;
public String getMATNR() {
return MATNR;
}
public void setMATNR(String mATNR) {
MATNR = mATNR;
}
public String getKBETR() {
return KBETR;
}
public void setKBETR(String kBETR) {
KBETR = kBETR;
}
public String getKONWA() {
return KONWA;
}
public void setKONWA(String kONWA) {
KONWA = kONWA;
}
public String getKPEIN() {
return KPEIN;
}
public void setKPEIN(String kPEIN) {
KPEIN = kPEIN;
}
public String getKMEIN() {
return KMEIN;
}
public void setKMEIN(String kMEIN) {
KMEIN = kMEIN;
}
public String getUMREZ() {
return UMREZ;
}
public void setUMREZ(String uMREZ) {
UMREZ = uMREZ;
}
public String getMAKTX() {
return MAKTX;
}
public void setMAKTX(String mAKTX) {
MAKTX = mAKTX;
}
public String getPRSCH() {
return PRSCH;
}
public void setPRSCH(String pRSCH) {
PRSCH = pRSCH;
}
public String getDATAM() {
return DATAM;
}
public void setDATAM(String dATAM) {
DATAM = dATAM;
}
public String getDATBI() {
return DATBI;
}
public void setDATBI(String dATBI) {
DATBI = dATBI;
}
public String getPLINE() {
return PLINE;
}
public void setPLINE(String pLINE) {
PLINE = pLINE;
}
public String getPRSCH_1() {
return PRSCH_1;
}
public void setPRSCH_1(String pRSCH_1) {
PRSCH_1 = pRSCH_1;
}
}
public Z_MI_SD_005_PERFORM_INVOICE.RECORD.HEADER_SENDING getHEADER_SENDING() {
return HEADER_SENDING;
}
public void setHEADER_SENDING(Z_MI_SD_005_PERFORM_INVOICE.RECORD.HEADER_SENDING hEADER_SENDING) {
HEADER_SENDING = hEADER_SENDING;
}
public List<Z_MI_SD_005_PERFORM_INVOICE.RECORD.ITEM> getITEM() {
return ITEM;
}
public void setITEM(List<Z_MI_SD_005_PERFORM_INVOICE.RECORD.ITEM> iTEM) {
ITEM = iTEM;
}
}
public Z_MI_SD_005_PERFORM_INVOICE.RECORD getRECORD() {
return RECORD;
}
public void setRECORD(Z_MI_SD_005_PERFORM_INVOICE.RECORD rECORD) {
RECORD = rECORD;
}
}
package com.egolm.sso.services.price_list;
import javax.jws.WebMethod;
import javax.jws.WebService;
@WebService(targetNamespace = "http://price_list.sso.egolm.com")
public interface PriceListService {
@WebMethod
public void execute(Z_MI_SD_002_PRICE_LIST Z_MI_SD_002_PRICE_LIST);
}
package com.egolm.sso.services.price_list;
import javax.jws.WebService;
import org.springframework.stereotype.Component;
import com.google.gson.Gson;
@Component
@WebService(serviceName = "PriceListService", targetNamespace = "http://price_list.sso.egolm.com", endpointInterface = "com.egolm.sso.services.price_list.PriceListService")
public class PriceListServiceImpl implements PriceListService {
@Override
public void execute(Z_MI_SD_002_PRICE_LIST Z_MI_SD_002_PRICE_LIST) {
System.out.println(new Gson().toJson(Z_MI_SD_002_PRICE_LIST));
}
}
package com.egolm.sso.services.price_list;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Z_MI_SD_002_PRICE_LIST", propOrder = { "RECORD" })
public class Z_MI_SD_002_PRICE_LIST {
@XmlElement(name = "RECORD", required = true)
protected Z_MI_SD_002_PRICE_LIST.RECORD RECORD;
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = { "HEADER_SENDING", "ITEM" })
public static class RECORD {
@XmlElement(name = "HEADER_SENDING", required = true)
protected Z_MI_SD_002_PRICE_LIST.RECORD.HEADER_SENDING HEADER_SENDING;
@XmlElement(name = "ITEM", required = true)
protected List<Z_MI_SD_002_PRICE_LIST.RECORD.ITEM> ITEM;
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = { "KUNNR", "DATUM", "UZEIT" })
public static class HEADER_SENDING {
@XmlElement(name = "KUNNR")
protected String KUNNR;
@XmlElement(name = "DATUM")
protected String DATUM;
@XmlElement(name = "UZEIT")
protected String UZEIT;
public String getKUNNR() {
return KUNNR;
}
public void setKUNNR(String kUNNR) {
KUNNR = kUNNR;
}
public String getDATUM() {
return DATUM;
}
public void setDATUM(String dATUM) {
DATUM = dATUM;
}
public String getUZEIT() {
return UZEIT;
}
public void setUZEIT(String uZEIT) {
UZEIT = uZEIT;
}
}
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = { "MATNR", "KBETR", "KONWA", "KPEIN", "KMEIN", "UMREZ", "MAKTX", "PRSCH", "DATAM", "DATBI", "PLINE", "PRSCH_1" })
public static class ITEM {
@XmlElement(name = "MATNR")
protected String MATNR;
@XmlElement(name = "KBETR")
protected String KBETR;
@XmlElement(name = "KONWA")
protected String KONWA;
@XmlElement(name = "KPEIN")
protected String KPEIN;
@XmlElement(name = "KMEIN")
protected String KMEIN;
@XmlElement(name = "UMREZ")
protected String UMREZ;
@XmlElement(name = "MAKTX")
protected String MAKTX;
@XmlElement(name = "PRSCH")
protected String PRSCH;
@XmlElement(name = "DATAM")
protected String DATAM;
@XmlElement(name = "DATBI")
protected String DATBI;
@XmlElement(name = "PLINE")
protected String PLINE;
@XmlElement(name = "PRSCH_1")
protected String PRSCH_1;
public String getMATNR() {
return MATNR;
}
public void setMATNR(String mATNR) {
MATNR = mATNR;
}
public String getKBETR() {
return KBETR;
}
public void setKBETR(String kBETR) {
KBETR = kBETR;
}
public String getKONWA() {
return KONWA;
}
public void setKONWA(String kONWA) {
KONWA = kONWA;
}
public String getKPEIN() {
return KPEIN;
}
public void setKPEIN(String kPEIN) {
KPEIN = kPEIN;
}
public String getKMEIN() {
return KMEIN;
}
public void setKMEIN(String kMEIN) {
KMEIN = kMEIN;
}
public String getUMREZ() {
return UMREZ;
}
public void setUMREZ(String uMREZ) {
UMREZ = uMREZ;
}
public String getMAKTX() {
return MAKTX;
}
public void setMAKTX(String mAKTX) {
MAKTX = mAKTX;
}
public String getPRSCH() {
return PRSCH;
}
public void setPRSCH(String pRSCH) {
PRSCH = pRSCH;
}
public String getDATAM() {
return DATAM;
}
public void setDATAM(String dATAM) {
DATAM = dATAM;
}
public String getDATBI() {
return DATBI;
}
public void setDATBI(String dATBI) {
DATBI = dATBI;
}
public String getPLINE() {
return PLINE;
}
public void setPLINE(String pLINE) {
PLINE = pLINE;
}
public String getPRSCH_1() {
return PRSCH_1;
}
public void setPRSCH_1(String pRSCH_1) {
PRSCH_1 = pRSCH_1;
}
}
public Z_MI_SD_002_PRICE_LIST.RECORD.HEADER_SENDING getHEADER_SENDING() {
return HEADER_SENDING;
}
public void setHEADER_SENDING(Z_MI_SD_002_PRICE_LIST.RECORD.HEADER_SENDING hEADER_SENDING) {
HEADER_SENDING = hEADER_SENDING;
}
public List<Z_MI_SD_002_PRICE_LIST.RECORD.ITEM> getITEM() {
return ITEM;
}
public void setITEM(List<Z_MI_SD_002_PRICE_LIST.RECORD.ITEM> iTEM) {
ITEM = iTEM;
}
}
public Z_MI_SD_002_PRICE_LIST.RECORD getRECORD() {
return RECORD;
}
public void setRECORD(Z_MI_SD_002_PRICE_LIST.RECORD rECORD) {
RECORD = rECORD;
}
}
package com.egolm.sso.material_master;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>execute complex type的 Java 类。
*
* <p>以下模式片段指定包含在此类中的预期内容。
*
* <pre>
* &lt;complexType name="execute"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="arg0" type="{http://material_master.sso.egolm.com}Z_MI_SD_001_MATERIAL_MASTER" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "execute", propOrder = {
"arg0"
})
public class Execute {
protected ZMISD001MATERIALMASTER arg0;
/**
* 获取arg0属性的值。
*
* @return
* possible object is
* {@link ZMISD001MATERIALMASTER }
*
*/
public ZMISD001MATERIALMASTER getArg0() {
return arg0;
}
/**
* 设置arg0属性的值。
*
* @param value
* allowed object is
* {@link ZMISD001MATERIALMASTER }
*
*/
public void setArg0(ZMISD001MATERIALMASTER value) {
this.arg0 = value;
}
}
package com.egolm.sso.material_master;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>executeResponse complex type的 Java 类。
*
* <p>以下模式片段指定包含在此类中的预期内容。
*
* <pre>
* &lt;complexType name="executeResponse"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "executeResponse")
public class ExecuteResponse {
}
package com.egolm.sso.material_master;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.ws.RequestWrapper;
import javax.xml.ws.ResponseWrapper;
/**
* This class was generated by Apache CXF 3.2.9
* 2019-07-05T17:48:29.267+08:00
* Generated source version: 3.2.9
*
*/
@WebService(targetNamespace = "http://material_master.sso.egolm.com", name = "MaterialMasterService")
@XmlSeeAlso({ObjectFactory.class})
public interface MaterialMasterService {
@WebMethod
@RequestWrapper(localName = "execute", targetNamespace = "http://material_master.sso.egolm.com", className = "com.egolm.sso.material_master.Execute")
@ResponseWrapper(localName = "executeResponse", targetNamespace = "http://material_master.sso.egolm.com", className = "com.egolm.sso.material_master.ExecuteResponse")
public void execute(
@WebParam(name = "arg0", targetNamespace = "")
com.egolm.sso.material_master.ZMISD001MATERIALMASTER arg0
);
}
package com.egolm.sso.material_master;
import java.net.MalformedURLException;
import java.net.URL;
import javax.xml.namespace.QName;
import javax.xml.ws.WebEndpoint;
import javax.xml.ws.WebServiceClient;
import javax.xml.ws.WebServiceFeature;
import javax.xml.ws.Service;
/**
* This class was generated by Apache CXF 3.2.9
* 2019-07-05T17:48:29.300+08:00
* Generated source version: 3.2.9
*
*/
@WebServiceClient(name = "MaterialMasterService",
wsdlLocation = "http://localhost:8080/sso/services/material_master?wsdl",
targetNamespace = "http://material_master.sso.egolm.com")
public class MaterialMasterService_Service extends Service {
public final static URL WSDL_LOCATION;
public final static QName SERVICE = new QName("http://material_master.sso.egolm.com", "MaterialMasterService");
public final static QName MaterialMasterServiceImplPort = new QName("http://material_master.sso.egolm.com", "MaterialMasterServiceImplPort");
static {
URL url = null;
try {
url = new URL("http://localhost:8080/sso/services/material_master?wsdl");
} catch (MalformedURLException e) {
java.util.logging.Logger.getLogger(MaterialMasterService_Service.class.getName())
.log(java.util.logging.Level.INFO,
"Can not initialize the default wsdl from {0}", "http://localhost:8080/sso/services/material_master?wsdl");
}
WSDL_LOCATION = url;
}
public MaterialMasterService_Service(URL wsdlLocation) {
super(wsdlLocation, SERVICE);
}
public MaterialMasterService_Service(URL wsdlLocation, QName serviceName) {
super(wsdlLocation, serviceName);
}
public MaterialMasterService_Service() {
super(WSDL_LOCATION, SERVICE);
}
public MaterialMasterService_Service(WebServiceFeature ... features) {
super(WSDL_LOCATION, SERVICE, features);
}
public MaterialMasterService_Service(URL wsdlLocation, WebServiceFeature ... features) {
super(wsdlLocation, SERVICE, features);
}
public MaterialMasterService_Service(URL wsdlLocation, QName serviceName, WebServiceFeature ... features) {
super(wsdlLocation, serviceName, features);
}
/**
*
* @return
* returns MaterialMasterService
*/
@WebEndpoint(name = "MaterialMasterServiceImplPort")
public MaterialMasterService getMaterialMasterServiceImplPort() {
return super.getPort(MaterialMasterServiceImplPort, MaterialMasterService.class);
}
/**
*
* @param features
* A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the <code>features</code> parameter will have their default values.
* @return
* returns MaterialMasterService
*/
@WebEndpoint(name = "MaterialMasterServiceImplPort")
public MaterialMasterService getMaterialMasterServiceImplPort(WebServiceFeature... features) {
return super.getPort(MaterialMasterServiceImplPort, MaterialMasterService.class, features);
}
}
package com.egolm.sso.material_master;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlElementDecl;
import javax.xml.bind.annotation.XmlRegistry;
import javax.xml.namespace.QName;
/**
* This object contains factory methods for each
* Java content interface and Java element interface
* generated in the com.egolm.sso.material_master package.
* <p>An ObjectFactory allows you to programatically
* construct new instances of the Java representation
* for XML content. The Java representation of XML
* content can consist of schema derived interfaces
* and classes representing the binding of schema
* type definitions, element declarations and model
* groups. Factory methods for each of these are
* provided in this class.
*
*/
@XmlRegistry
public class ObjectFactory {
private final static QName _Execute_QNAME = new QName("http://material_master.sso.egolm.com", "execute");
private final static QName _ExecuteResponse_QNAME = new QName("http://material_master.sso.egolm.com", "executeResponse");
/**
* Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: com.egolm.sso.material_master
*
*/
public ObjectFactory() {
}
/**
* Create an instance of {@link ZMISD001MATERIALMASTER }
*
*/
public ZMISD001MATERIALMASTER createZMISD001MATERIALMASTER() {
return new ZMISD001MATERIALMASTER();
}
/**
* Create an instance of {@link ZMISD001MATERIALMASTER.RECORD }
*
*/
public ZMISD001MATERIALMASTER.RECORD createZMISD001MATERIALMASTERRECORD() {
return new ZMISD001MATERIALMASTER.RECORD();
}
/**
* Create an instance of {@link Execute }
*
*/
public Execute createExecute() {
return new Execute();
}
/**
* Create an instance of {@link ExecuteResponse }
*
*/
public ExecuteResponse createExecuteResponse() {
return new ExecuteResponse();
}
/**
* Create an instance of {@link ZMISD001MATERIALMASTER.RECORD.HEADERSENDING }
*
*/
public ZMISD001MATERIALMASTER.RECORD.HEADERSENDING createZMISD001MATERIALMASTERRECORDHEADERSENDING() {
return new ZMISD001MATERIALMASTER.RECORD.HEADERSENDING();
}
/**
* Create an instance of {@link ZMISD001MATERIALMASTER.RECORD.ITEM }
*
*/
public ZMISD001MATERIALMASTER.RECORD.ITEM createZMISD001MATERIALMASTERRECORDITEM() {
return new ZMISD001MATERIALMASTER.RECORD.ITEM();
}
/**
* Create an instance of {@link JAXBElement }{@code <}{@link Execute }{@code >}}
*
*/
@XmlElementDecl(namespace = "http://material_master.sso.egolm.com", name = "execute")
public JAXBElement<Execute> createExecute(Execute value) {
return new JAXBElement<Execute>(_Execute_QNAME, Execute.class, null, value);
}
/**
* Create an instance of {@link JAXBElement }{@code <}{@link ExecuteResponse }{@code >}}
*
*/
@XmlElementDecl(namespace = "http://material_master.sso.egolm.com", name = "executeResponse")
public JAXBElement<ExecuteResponse> createExecuteResponse(ExecuteResponse value) {
return new JAXBElement<ExecuteResponse>(_ExecuteResponse_QNAME, ExecuteResponse.class, null, value);
}
}
@javax.xml.bind.annotation.XmlSchema(namespace = "http://material_master.sso.egolm.com")
package com.egolm.sso.material_master;
package com.egolm.sso.price_list;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>execute complex type的 Java 类。
*
* <p>以下模式片段指定包含在此类中的预期内容。
*
* <pre>
* &lt;complexType name="execute"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;element name="arg0" type="{http://price_list.sso.egolm.com}Z_MI_SD_002_PRICE_LIST" minOccurs="0"/&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "execute", propOrder = {
"arg0"
})
public class Execute {
protected ZMISD002PRICELIST arg0;
/**
* 获取arg0属性的值。
*
* @return
* possible object is
* {@link ZMISD002PRICELIST }
*
*/
public ZMISD002PRICELIST getArg0() {
return arg0;
}
/**
* 设置arg0属性的值。
*
* @param value
* allowed object is
* {@link ZMISD002PRICELIST }
*
*/
public void setArg0(ZMISD002PRICELIST value) {
this.arg0 = value;
}
}
package com.egolm.sso.price_list;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* <p>executeResponse complex type的 Java 类。
*
* <p>以下模式片段指定包含在此类中的预期内容。
*
* <pre>
* &lt;complexType name="executeResponse"&gt;
* &lt;complexContent&gt;
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
* &lt;sequence&gt;
* &lt;/sequence&gt;
* &lt;/restriction&gt;
* &lt;/complexContent&gt;
* &lt;/complexType&gt;
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "executeResponse")
public class ExecuteResponse {
}
package com.egolm.sso.price_list;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlElementDecl;
import javax.xml.bind.annotation.XmlRegistry;
import javax.xml.namespace.QName;
/**
* This object contains factory methods for each
* Java content interface and Java element interface
* generated in the com.egolm.sso.price_list package.
* <p>An ObjectFactory allows you to programatically
* construct new instances of the Java representation
* for XML content. The Java representation of XML
* content can consist of schema derived interfaces
* and classes representing the binding of schema
* type definitions, element declarations and model
* groups. Factory methods for each of these are
* provided in this class.
*
*/
@XmlRegistry
public class ObjectFactory {
private final static QName _Execute_QNAME = new QName("http://price_list.sso.egolm.com", "execute");
private final static QName _ExecuteResponse_QNAME = new QName("http://price_list.sso.egolm.com", "executeResponse");
/**
* Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: com.egolm.sso.price_list
*
*/
public ObjectFactory() {
}
/**
* Create an instance of {@link ZMISD002PRICELIST }
*
*/
public ZMISD002PRICELIST createZMISD002PRICELIST() {
return new ZMISD002PRICELIST();
}
/**
* Create an instance of {@link ZMISD002PRICELIST.RECORD }
*
*/
public ZMISD002PRICELIST.RECORD createZMISD002PRICELISTRECORD() {
return new ZMISD002PRICELIST.RECORD();
}
/**
* Create an instance of {@link Execute }
*
*/
public Execute createExecute() {
return new Execute();
}
/**
* Create an instance of {@link ExecuteResponse }
*
*/
public ExecuteResponse createExecuteResponse() {
return new ExecuteResponse();
}
/**
* Create an instance of {@link ZMISD002PRICELIST.RECORD.HEADERSENDING }
*
*/
public ZMISD002PRICELIST.RECORD.HEADERSENDING createZMISD002PRICELISTRECORDHEADERSENDING() {
return new ZMISD002PRICELIST.RECORD.HEADERSENDING();
}
/**
* Create an instance of {@link ZMISD002PRICELIST.RECORD.ITEM }
*
*/
public ZMISD002PRICELIST.RECORD.ITEM createZMISD002PRICELISTRECORDITEM() {
return new ZMISD002PRICELIST.RECORD.ITEM();
}
/**
* Create an instance of {@link JAXBElement }{@code <}{@link Execute }{@code >}}
*
*/
@XmlElementDecl(namespace = "http://price_list.sso.egolm.com", name = "execute")
public JAXBElement<Execute> createExecute(Execute value) {
return new JAXBElement<Execute>(_Execute_QNAME, Execute.class, null, value);
}
/**
* Create an instance of {@link JAXBElement }{@code <}{@link ExecuteResponse }{@code >}}
*
*/
@XmlElementDecl(namespace = "http://price_list.sso.egolm.com", name = "executeResponse")
public JAXBElement<ExecuteResponse> createExecuteResponse(ExecuteResponse value) {
return new JAXBElement<ExecuteResponse>(_ExecuteResponse_QNAME, ExecuteResponse.class, null, value);
}
}
package com.egolm.sso.price_list;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.ws.RequestWrapper;
import javax.xml.ws.ResponseWrapper;
/**
* This class was generated by Apache CXF 3.2.9
* 2019-07-05T17:27:12.453+08:00
* Generated source version: 3.2.9
*
*/
@WebService(targetNamespace = "http://price_list.sso.egolm.com", name = "PriceListService")
@XmlSeeAlso({ObjectFactory.class})
public interface PriceListService {
@WebMethod
@RequestWrapper(localName = "execute", targetNamespace = "http://price_list.sso.egolm.com", className = "com.egolm.sso.price_list.Execute")
@ResponseWrapper(localName = "executeResponse", targetNamespace = "http://price_list.sso.egolm.com", className = "com.egolm.sso.price_list.ExecuteResponse")
public void execute(
@WebParam(name = "arg0", targetNamespace = "")
com.egolm.sso.price_list.ZMISD002PRICELIST arg0
);
}
package com.egolm.sso.price_list;
import java.net.MalformedURLException;
import java.net.URL;
import javax.xml.namespace.QName;
import javax.xml.ws.WebEndpoint;
import javax.xml.ws.WebServiceClient;
import javax.xml.ws.WebServiceFeature;
import javax.xml.ws.Service;
/**
* This class was generated by Apache CXF 3.2.9
* 2019-07-05T17:27:12.484+08:00
* Generated source version: 3.2.9
*
*/
@WebServiceClient(name = "PriceListService",
wsdlLocation = "http://localhost:8080/sso/services/price_list?wsdl",
targetNamespace = "http://price_list.sso.egolm.com")
public class PriceListService_Service extends Service {
public final static URL WSDL_LOCATION;
public final static QName SERVICE = new QName("http://price_list.sso.egolm.com", "PriceListService");
public final static QName PriceListServiceImplPort = new QName("http://price_list.sso.egolm.com", "PriceListServiceImplPort");
static {
URL url = null;
try {
url = new URL("http://localhost:8080/sso/services/price_list?wsdl");
} catch (MalformedURLException e) {
java.util.logging.Logger.getLogger(PriceListService_Service.class.getName())
.log(java.util.logging.Level.INFO,
"Can not initialize the default wsdl from {0}", "http://localhost:8080/sso/services/price_list?wsdl");
}
WSDL_LOCATION = url;
}
public PriceListService_Service(URL wsdlLocation) {
super(wsdlLocation, SERVICE);
}
public PriceListService_Service(URL wsdlLocation, QName serviceName) {
super(wsdlLocation, serviceName);
}
public PriceListService_Service() {
super(WSDL_LOCATION, SERVICE);
}
public PriceListService_Service(WebServiceFeature ... features) {
super(WSDL_LOCATION, SERVICE, features);
}
public PriceListService_Service(URL wsdlLocation, WebServiceFeature ... features) {
super(wsdlLocation, SERVICE, features);
}
public PriceListService_Service(URL wsdlLocation, QName serviceName, WebServiceFeature ... features) {
super(wsdlLocation, serviceName, features);
}
/**
*
* @return
* returns PriceListService
*/
@WebEndpoint(name = "PriceListServiceImplPort")
public PriceListService getPriceListServiceImplPort() {
return super.getPort(PriceListServiceImplPort, PriceListService.class);
}
/**
*
* @param features
* A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the <code>features</code> parameter will have their default values.
* @return
* returns PriceListService
*/
@WebEndpoint(name = "PriceListServiceImplPort")
public PriceListService getPriceListServiceImplPort(WebServiceFeature... features) {
return super.getPort(PriceListServiceImplPort, PriceListService.class, features);
}
}
@javax.xml.bind.annotation.XmlSchema(namespace = "http://price_list.sso.egolm.com")
package com.egolm.sso.price_list;
package test;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import javax.security.auth.callback.Callback;
import javax.security.auth.callback.CallbackHandler;
import org.apache.cxf.endpoint.ClientImpl;
import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
import org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor;
import org.apache.ws.security.WSConstants;
import org.apache.ws.security.handler.WSHandlerConstants;
import org.apache.wss4j.common.ext.WSPasswordCallback;
import com.alibaba.fastjson.JSON;
public class JaxWsDynamicClientTest {
private static final String username = "test";
private static final String password = "78258c537d6e4d5fb210a57d05619fb6";
public static void main(String[] args) throws Exception {
JaxWsDynamicClientFactory factory = JaxWsDynamicClientFactory.newInstance();
ClientImpl client = (ClientImpl) factory.createClient("http://localhost:8080/sso/services/material_master?wsdl");
Map<String, Object> properties = new HashMap<String, Object>();
properties.put(WSHandlerConstants.ACTION, WSHandlerConstants.USERNAME_TOKEN);
properties.put(WSHandlerConstants.USER, username);
properties.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_DIGEST);
properties.put(WSHandlerConstants.PW_CALLBACK_REF, new CallbackHandler() {
public void handle(Callback[] callbacks) {
for (int i = 0; i < callbacks.length; i++) {
WSPasswordCallback pc = (WSPasswordCallback) callbacks[i];
pc.setPassword(password);
}
}
});
WSS4JOutInterceptor interceptor = new WSS4JOutInterceptor();
interceptor.setProperties(properties);
client.setOutInterceptors(Arrays.asList(interceptor));
String xml = readText("D:/data/sso/001.XML");
System.out.println(JSON.toJSONString(client.invoke("execute", xml)));
}
private static String readText(String path) throws IOException {
BufferedReader br = null;
try {
br = new BufferedReader(new InputStreamReader(new FileInputStream(path)));
String line = null;
StringBuffer sb = new StringBuffer();
while ((line = br.readLine()) != null) {
sb.append(line);
}
return sb.toString();
} finally {
br.close();
}
}
}
package test; package test;
import java.util.List; import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import com.egolm.sso.material_master.MaterialMasterService; import javax.security.auth.callback.Callback;
import com.egolm.sso.material_master.MaterialMasterService_Service; import javax.security.auth.callback.CallbackHandler;
import com.egolm.sso.material_master.ZMISD001MATERIALMASTER;
import org.apache.cxf.endpoint.ClientImpl;
import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
import org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor;
import org.apache.ws.security.WSConstants;
import org.apache.ws.security.handler.WSHandlerConstants;
import org.apache.wss4j.common.ext.WSPasswordCallback;
import com.alibaba.fastjson.JSON;
public class MaterialMasterServiceTest { public class MaterialMasterServiceTest {
public static void main(String[] args) { private static final String username = "test";
MaterialMasterService_Service service = new MaterialMasterService_Service(); private static final String password = "78258c537d6e4d5fb210a57d05619fb6";
MaterialMasterService materialMasterService = service.getMaterialMasterServiceImplPort();
materialMasterService.execute(getZMISD001MATERIALMASTER());
public static void main(String[] args) throws Exception {
JaxWsDynamicClientFactory factory = JaxWsDynamicClientFactory.newInstance();
ClientImpl client = (ClientImpl) factory.createClient("http://localhost:8080/sso/services/material_master?wsdl");
Map<String, Object> properties = new HashMap<String, Object>();
properties.put(WSHandlerConstants.ACTION, WSHandlerConstants.USERNAME_TOKEN);
properties.put(WSHandlerConstants.USER, username);
properties.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_DIGEST);
properties.put(WSHandlerConstants.PW_CALLBACK_REF, new CallbackHandler() {
public void handle(Callback[] callbacks) {
for (int i = 0; i < callbacks.length; i++) {
WSPasswordCallback pc = (WSPasswordCallback) callbacks[i];
pc.setPassword(password);
}
}
});
WSS4JOutInterceptor interceptor = new WSS4JOutInterceptor();
interceptor.setProperties(properties);
client.setOutInterceptors(Arrays.asList(interceptor));
String xml = readText("D:/data/sso/001.XML");
System.out.println(JSON.toJSONString(client.invoke("execute", xml)));
} }
private static ZMISD001MATERIALMASTER getZMISD001MATERIALMASTER() { private static String readText(String path) throws IOException {
ZMISD001MATERIALMASTER ZMISD001MATERIALMASTER = new ZMISD001MATERIALMASTER(); BufferedReader br = null;
ZMISD001MATERIALMASTER.RECORD RECORD = new ZMISD001MATERIALMASTER.RECORD(); try {
ZMISD001MATERIALMASTER.RECORD.HEADERSENDING HEADERSENDING = new ZMISD001MATERIALMASTER.RECORD.HEADERSENDING(); br = new BufferedReader(new InputStreamReader(new FileInputStream(path)));
HEADERSENDING.setDATUM("DATUM"); String line = null;
HEADERSENDING.setKUNNR("KUNNR"); StringBuffer sb = new StringBuffer();
HEADERSENDING.setUZEIT("SUEIT"); while ((line = br.readLine()) != null) {
RECORD.setHEADERSENDING(HEADERSENDING); sb.append(line);
List<ZMISD001MATERIALMASTER.RECORD.ITEM> ITEMLIST = RECORD.getITEM(); }
ZMISD001MATERIALMASTER.RECORD.ITEM ITEM = new ZMISD001MATERIALMASTER.RECORD.ITEM(); return sb.toString();
ITEM.setBRGEW("BRGEW"); } finally {
ITEMLIST.add(ITEM); br.close();
RECORD.setHEADERSENDING(HEADERSENDING); }
ZMISD001MATERIALMASTER.setRECORD(RECORD);
return ZMISD001MATERIALMASTER;
} }
} }
package test;
import java.util.List;
import com.egolm.sso.price_list.PriceListService;
import com.egolm.sso.price_list.PriceListService_Service;
import com.egolm.sso.price_list.ZMISD002PRICELIST;
public class PriceListServiceTest {
public static void main(String[] args) {
PriceListService_Service service = new PriceListService_Service();
PriceListService priceListService = service.getPriceListServiceImplPort();
priceListService.execute(getZMISD002PRICELIST());
}
private static ZMISD002PRICELIST getZMISD002PRICELIST() {
ZMISD002PRICELIST ZMISD002PRICELIST = new ZMISD002PRICELIST();
ZMISD002PRICELIST.RECORD RECORD = new ZMISD002PRICELIST.RECORD();
ZMISD002PRICELIST.RECORD.HEADERSENDING HEADERSENDING = new ZMISD002PRICELIST.RECORD.HEADERSENDING();
HEADERSENDING.setDATUM("DATUM");
HEADERSENDING.setKUNNR("KUNNR");
HEADERSENDING.setUZEIT("SUEIT");
RECORD.setHEADERSENDING(HEADERSENDING);
List<ZMISD002PRICELIST.RECORD.ITEM> ITEMLIST = RECORD.getITEM();
ZMISD002PRICELIST.RECORD.ITEM ITEM = new ZMISD002PRICELIST.RECORD.ITEM();
ITEM.setDATAM("DATAM");
ITEMLIST.add(ITEM);
RECORD.setHEADERSENDING(HEADERSENDING);
ZMISD002PRICELIST.setRECORD(RECORD);
return ZMISD002PRICELIST;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment