最代码广告位
zhos0212的gravatar头像
zhos02122015-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
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友