博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Apache CXF之初探
阅读量:6877 次
发布时间:2019-06-26

本文共 2993 字,大约阅读时间需要 9 分钟。

  hot3.png

一、到官网 http://cxf.apache.org/download.html 下载对应的 包。

二、新建Java 工程,把对应的jar包放入去。

三、创建 server 端的程序。

     共有3个Java文件:

     3.1 新建接口 HelloWorld,此接口只有一个方法,如下代码:

package com.yao.cxf.server;public interface HelloWorld {	String sayHi(String text);}

      3.2 实现接口类 HelloWorldImpl:

package com.yao.cxf.server;public class HelloWorldImpl implements HelloWorld {	@Override	public String sayHi(String text) {		return "Hello,"+text;	}}

      3.3 服务器端类:

package com.yao.cxf.server;import org.apache.cxf.frontend.ServerFactoryBean;public class Server {	public Server() throws Exception{		HelloWorldImpl hw = new HelloWorldImpl();		ServerFactoryBean sfb = new ServerFactoryBean();		sfb.setServiceClass(HelloWorld.class);		sfb.setServiceBean(hw);		sfb.setAddress("http://localhost:9000/Hello");		sfb.create();	}		public static void main(String[] args) throws Exception{		new Server();		System.out.println("server start ...");		Thread.sleep(5*60*1000);		System.out.println("server exit ...");		System.exit(0);	}}

四、创建客户端:

客户端设置和服务器端一样的地址才可以访问:

package com.yao.cxf.client;import org.apache.cxf.frontend.ClientProxyFactoryBean;import com.yao.cxf.server.HelloWorld;public class Client {	public static void main(String[] args) {		ClientProxyFactoryBean clientFactory = new ClientProxyFactoryBean();		clientFactory.setAddress("http://localhost:9000/Hello");		HelloWorld hw = clientFactory.create(HelloWorld.class);		System.out.println(hw.sayHi("yaokj"));	}}

五、先启动运行Server类,再运行Client类,

     5.1 运行Server类打印如下的结果:

2014-8-20 15:28:15 org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean buildServiceFromClass信息: Creating Service {http://server.cxf.yao.com/}HelloWorld from class com.yao.cxf.server.HelloWorld2014-8-20 15:28:16 org.apache.cxf.endpoint.ServerImpl initDestination信息: Setting the server's publish address to be http://localhost:9000/Hello2014-8-20 15:28:16 org.eclipse.jetty.server.Server doStart信息: jetty-8.1.15.v201404112014-8-20 15:28:16 org.eclipse.jetty.server.AbstractConnector doStart信息: Started SelectChannelConnector@localhost:90002014-8-20 15:28:16 org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean buildServiceFromWSDL信息: Creating Service {http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01}Discovery from WSDL: classpath:/org/apache/cxf/ws/discovery/wsdl/wsdd-discovery-1.1-wsdl-os.wsdl2014-8-20 15:28:16 org.apache.cxf.endpoint.ServerImpl initDestination信息: Setting the server's publish address to be soap.udp://239.255.255.250:37022014-8-20 15:28:16 org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean buildServiceFromClass信息: Creating Service {http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01}DiscoveryProxy from class org.apache.cxf.jaxws.support.DummyImplserver start ...server exit ...

    5.1  运行Client类 打印如下的结果:

2014-8-20 15:28:38 org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean buildServiceFromClass信息: Creating Service {http://server.cxf.yao.com/}HelloWorld from class com.yao.cxf.server.HelloWorldHello,yaokj

转载于:https://my.oschina.net/jamaly/blog/304775

你可能感兴趣的文章
一台机器同时启动多个tomcat
查看>>
Java中的多线程
查看>>
Zookeeper不适合注册中心的原因
查看>>
内核是什么
查看>>
标签的语义
查看>>
Freemarker入门例子
查看>>
利用busybox工具制作微型linux系统二
查看>>
商业无小事,现实生活不在童话故事里
查看>>
Unsupported major.minor version 51.0解决办法
查看>>
我的友情链接
查看>>
新手如何入门
查看>>
15.2-全栈Java笔记:ActionEvent事件类型可以实现哪些功能?
查看>>
apache-tomcat-6.0.X如何配置管理界面Administration Tool
查看>>
Ibatis实例程序
查看>>
Linux下Nagios的安装与配置
查看>>
esxi5手动打补丁升级
查看>>
spring core 笔记(一)
查看>>
一例mysql主从数据库,从库宕机后无法启动的解决方案
查看>>
WebView 设置软键盘弹出将屏幕上移
查看>>
JVM学习总结五(番外)——JConsole
查看>>