zhos0212的gravatar头像
zhos0212 2015-10-15 11:03:04

Apache CXF开源框架实现java webservice接口开发的入门实例教程

本资料为webservice接口入门例子,主要描述通过CXF方式开发webservice接口,包含了服务端Server接口的开发与对外发布以及客户端Client调用过程。

Apache CXF 是一个开放源代码框架,提供了用于方便地构建和开发 Web 服务的可靠基础架构。它允许创建高性能和可扩展的服务,您可以将这样的服务部署在 Tomcat 和基于 Spring 的轻量级容器中,以及部署在更高级的服务器上,例如 Jboss、IBM® WebSphere® 或 BEA WebLogic。

接口服务器工程示意图

Apache CXF开源框架实现java webservice接口开发的入门实例教程

客户端工程截图

Apache CXF开源框架实现java webservice接口开发的入门实例教程

运行截图

Apache CXF开源框架实现java webservice接口开发的入门实例教程Apache CXF开源框架实现java webservice接口开发的入门实例教程Apache CXF开源框架实现java webservice接口开发的入门实例教程Apache CXF开源框架实现java webservice接口开发的入门实例教程
tomcat的http端口需要设置为5071,并且访问路径需要带上项目名称:webServiceServer

Apache CXF开源框架实现java webservice接口开发的入门实例教程

另外webServiceClient项目的Client.java和Client3.java需要修改请求路径,否则无法访问到webservice服务

Client.java

package com.zhos.client;

import com.zhos.webservice.cfx.server.HelloWorldService;
import org.apache.cxf.interceptor.LoggingInInterceptor;
import org.apache.cxf.interceptor.LoggingOutInterceptor;
import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;

public class Client {
    public static void main(String[] args) {
        JaxWsProxyFactoryBean bean = new JaxWsProxyFactoryBean();
        bean.getInInterceptors().add(new LoggingInInterceptor());
        bean.getInFaultInterceptors().add(new LoggingOutInterceptor());
        bean.setServiceClass(HelloWorldService.class);
        bean.setAddress("http://localhost:5071/webServiceServer/webservice/helloWorldService");
        HelloWorldService helloWorldService = (HelloWorldService) bean.create();
        String result = helloWorldService.sayHello("Kevin", "password");
        System.out.println(result);
    }
}

Client3.java

package com.zhos.client;

import org.apache.cxf.endpoint.Client;
import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;

public class Client3 {
    public static void main(String[] args) throws Exception {
        JaxWsDynamicClientFactory clientFactory = JaxWsDynamicClientFactory.newInstance();
        Client client = clientFactory.createClient("http://localhost:5071/webServiceServer/webservice/helloWorldService?wsdl");
        Object[] result = client.invoke("sayHello", new Object[]{"KEVIN", "zuidaima"});
        System.out.println(result[0]);
    }
}  

运行后截图

Apache CXF开源框架实现java webservice接口开发的入门实例教程

webServiceClient项目的jar包就是webServiceServer的jar包,复制一份即可。

Apache CXF开源框架实现java webservice接口开发的入门实例教程


最代码官方编辑于2017-6-6 18:39:45

打赏

文件名:webservice接口.rar,文件大小:12044.508K 下载
  • /
      • /webServiceClient
        • /webServiceClient/.classpath
        • /webServiceClient/.project
          • /webServiceClient/.settings
            • /webServiceClient/.settings/org.eclipse.jdt.core.prefs
          • /webServiceClient/bin
              • /webServiceClient/bin/com
                  • /webServiceClient/bin/com/zhos
                      • /webServiceClient/bin/com/zhos/client
                        • /webServiceClient/bin/com/zhos/client/Client.class
                        • /webServiceClient/bin/com/zhos/client/Client3.class
最代码最近下载分享源代码列表最近下载
lizw007  LV10 2022年1月20日
14095219w  LV5 2022年1月11日
cc900118  LV17 2021年10月11日
xk646842195  LV2 2020年10月14日
liuyilin9608  LV15 2020年5月17日
15398544947  LV9 2020年4月20日
632941115  LV3 2020年3月11日
1358849392  LV21 2019年12月19日
dengjunjun  LV15 2019年12月11日
landongming1987  LV1 2019年10月12日
最代码最近浏览分享源代码列表最近浏览
ksksksks  LV11 2023年9月18日
tlpaladin  LV7 2022年11月29日
gaotieyou  LV5 2022年4月11日
abababa  LV1 2022年3月24日
lizw007  LV10 2022年1月20日
14095219w  LV5 2022年1月11日
腐蚀的顺丰速递 2021年12月8日
暂无贡献等级
zzz9985688  LV10 2021年11月29日
ssh123  LV10 2021年11月18日
cc900118  LV17 2021年10月11日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友