Java通过soap1.1请求webservice接口

  1. 首先获取到soap接口的wsdl地址,通过soapUI工具打开。
    在这里插入图片描述
    前提需要在配置的插件工具配置axis地址,axis-1_4可在我的资源里下载。
    在这里插入图片描述
    选择导出包的位置,生成代码。
    在这里插入图片描述
  2. 将代码复制到java项目中。
    在这里插入图片描述
  3. 多环境配置可在Locator中导入配置文件,将HTTP_Port_address和HTTPS_Port_address的ip地址替换即可。
    在这里插入图片描述
    在接口请求中需要用户名密码验证,可封装配置在同一个类中。
public class ERPAPI {
    public static ErpWSConfig erpWSConfig;
    static {
        //从 Spring 容器中 获取 resTemperatureStatusService 对象
        erpWSConfig = SpringContextUtil.getBean(ErpWSConfig.class);
    }
    public static SI_WrappingMachine_OUT_Syn erpWebServiceTest() {
        try {
            SI_WrappingMachine_OUT_SynServiceLocator locator = new SI_WrappingMachine_OUT_SynServiceLocator();
            SI_WrappingMachine_OUT_Syn service = locator.getHTTP_Port();
            apply(service);
            return service;
        } catch (ServiceException e) {
            throw new RuntimeException(e);
        }
    }
    public static void apply(Object stubImpl) {
        Stub stub = (Stub) stubImpl;
        String username = erpWSConfig.getUsername();
        String password = erpWSConfig.getPassword();
        if (StringUtils.notBlank(username) && StringUtils.notBlank(password)) {
            stub.setUsername(username);
            stub.setPassword(password);
        } else {
            stub.setUsername("******");
            stub.setPassword("******");
        }
        //修改超时时间:5分钟
        stub.setTimeout(300000);
    }
}
  1. 最后可在代码中请求请求soap接口。
    public R erpwsTest(@RequestParam("VBELN") String VBELN) throws Exception {
        DT_WrappingMachine_Req dt_wrappingMachine_req = new DT_WrappingMachine_Req();
        dt_wrappingMachine_req.setVBELN(VBELN);
        DT_WrappingMachine_Resp dt_wrappingMachine_resp = ERPAPI.erpWebServiceTest().SI_WrappingMachine_OUT_Syn(dt_wrappingMachine_req);
        return R.ok(dt_wrappingMachine_resp);
    }
    

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值