前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java客户端调用c#的webservice服务

java客户端调用c#的webservice服务

作者头像
程序员一一涤生
发布2019-09-10 19:00:15
2K1
发布2019-09-10 19:00:15
举报

  此处使用到了CXF框架,可以使用以下坐标从maven仓库中获取相关jar包:

代码语言:javascript
复制
1 <dependency>
2   <groupId>org.apache.cxf</groupId>
3   <artifactId>apache-cxf</artifactId>
4   <version>3.0.3</version>
5   <type>pom</type>
6 </dependency>

  自定义一个ServerProxyer类,提供调用webservice的方法

代码语言:javascript
复制
package com.component;

import com.component.util.WebServicePropertyFileUtil;
import org.apache.cxf.endpoint.Client;
import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;


/**
 * desc:webservice服务端在本地的代理类
 */
public class ServerProxyer {

    private static String wsdlUrl ;
    private static Client client;

    static{
        //获取wsdl地址
        WebServicePropertyFileUtil.init_Custom("webservice");
        wsdlUrl = WebServicePropertyFileUtil.get("wsdlUrl");
        //创建客户端实例
        JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
        client = dcf.createClient(wsdlUrl);
    }

    /**
     * 调用webservice服务端方法
     * @param methodName 方法名
     * @param parameters 参数
     * @return
     */
    public static Object[] invoke(String methodName,String... parameters){
        Object[] res = null;
        try {
            res = client.invoke(methodName,parameters);
            for(Object obj : res){
                System.out.println(obj);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return  res;
    }

    public static void main(String[] args){
        invoke("SendMessages","haijen","您有一条新待办:","关于《》的通知");
    }
}

注意事项:可能会出现cxf依赖的第三方jar和你本地项目已经使用的jar有冲突的情况,比如ehcache.jar,如果有冲突,需要对冲突的jar进行处理。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015-02-03 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档