乐虎游戏|乐虎国际登录|欢迎你

WebService入门之CXF教程

日期:2019-11-05编辑作者:计算机资讯

import javax.jws.WebService;

相关教程: CXF使用Tomcat发布WebService的简单例子 http://www.linuxidc.com/Linux/2011-12/49309.htm

(3)将解压路径下的bin目录添加到系统的path环境变量,以便操作系统能找到bin目录下的命令,方便以后使用CXF提供的小工具。

HelloWorld.java

}

第一次使用CXF开发WebService,一个简单小例子。

import org.apache.cxf.endpoint.Server;
import org.apache.cxf.jaxws.JaxWsServerFactoryBean;

  1. package joe.test.cxf;  
  2.   
  3. import javax.jws.WebParam;  
  4. import javax.jws.WebService;  
  5.   
  6. @WebService  
  7. public interface HelloWorld {  
  8. String sayHi(@WebParam(name="text") String text);  
  9. }  

package test;

HelloWorldImpl.java

根据CXF官方的说明,CXF包含以下特性:

Client:

testClient.java

  1. package joe.test.cxf;  
  2.   
  3. import org.apache.cxf.interceptor.LoggingInInterceptor;  
  4. import org.apache.cxf.interceptor.LoggingOutInterceptor;  
  5. import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;  
  6.   
  7. public class testClient {  
  8.     public static void main(String[] args){  
  9.         JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();  
  10.         factory.getInInterceptors().add(new LoggingInInterceptor());  
  11.         factory.getOutInterceptors().add(new LoggingOutInterceptor());  
  12.         factory.setServiceClass(HelloWorld.class);  
  13.         factory.setAddress("");  
  14.         HelloWorld client = (HelloWorld) factory.create();  
  15.   
  16.         String reply = client.sayHi("Joe");  
  17.         System.out.println("Server said: " + reply);  
  18.         System.exit(0);   
  19.     }  
  20. }  

HelloWorld.java

  1. package joe.test.cxf;  
  2.   
  3. import javax.jws.WebParam;  
  4. import javax.jws.WebService;  
  5.   
  6. @WebService  
  7. public interface HelloWorld {  
  8.     String sayHi(@WebParam(name="text") String text);  
  9. }  

图片 1

由于是初学,这里先写一个最简单的hello world。

  1. package joe.test.cxf;  
  2.   
  3. import javax.jws.WebService;  
  4. import javax.xml.ws.Endpoint;  
  5.   
  6.   
  7. @WebService(endpointInterface = "joe.test.cxf.HelloWorld",  
  8.             serviceName = "HelloWorld")  
  9. public class DeployHelloWorldService {  
  10.       
  11.     public static void deployService(){  
  12.         System.out.println("Start Service...");  
  13.         HelloWorldImpl helloWorld = new HelloWorldImpl();  
  14.         String address = "";  
  15.         Endpoint.publish(address, helloWorld);  
  16.     }  
  17.       
  18.     public static void main(String[] args) throws InterruptedException{  
  19.         deployService();  
  20.         System.out.println("Start Server");  
  21.         Thread.sleep(1000 * 60);  
  22.         System.out.println("End Server");  
  23.         System.exit(0);  
  24.     }  
  25. }  

package test;

Server:

 }

DeployHelloWorldService.java

Apache CXF是一个开源的Service框架,可以用于简化用户的service开发,基于CXF开发的应用可提供SOAP、XML/HTTP、RESTFUL HTTP或CORBA等服务。CXF底层页可以使用不同的传输协议,包括HTTP、JMS或JBI等。

  1. package joe.test.cxf;  
  2.   
  3. public class HelloWorldImpl implements HelloWorld{  
  4.     public String sayHi(String name){  
  5.         return "Hello " + name;   
  6.     }  
  7. }  

(4)在test包中创建HelloWorld接口的实现类HelloWorldImpl,代码为:

 public static void main(String[] args)
 {
//  //第一种发布方式:通过CXF提供的JaxWsServerFactoryBean来发布webservice
//  JaxWsServerFactoryBean factory = new JaxWsServerFactoryBean();
//  factory.setServiceClass(HelloWorldImpl.class);
//  factory.setAddress("");
// 
//  Server server = factory.create();
//  server.start();
 
  //第二种方式,通过JAX-WS提供的Endpoint来发布webservice
  //首先创建webservice服务提供类的实例
  HelloWorldImpl implementor = new HelloWorldImpl();
  String address = "";
  Endpoint.publish(address, implementor);

import javax.xml.ws.Endpoint;

}

本文永久更新链接地址:http://www.linuxidc.com/Linux/2014-11/109830.htm

import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;

package test;

3.使用CXF开发web service

bin:该目录下保存了CXF提供的一些小工具,这些工具的主要作用是完成根据WSDL代码生成java代码,以及根据WSDL代码生成javascript代码等代码生成任务。

etc:该目录主要存放了CXF框架的一些杂项。

(2)将下载得到的压缩包解压得到apache-cxf-3.0.1文件夹,进入该文件夹可以看到文件夹中包含如下所示的目录结构。

(6)创建调用webservice的客户端代码

(4)为了在项目中使用CXF框架,需要将lib文件夹下的jar包添加到项目中。

1.CXF简介

Apache CXF实战 http://www.linuxidc.com/Linux/2012-05/59887.htm

就可以通过客户端访问webservice服务了。

package test;

下载并安装CXF步骤如下:

docs:该目录下有一个api子目录,其中保存了CXF的API文档。

本文由乐虎游戏发布于计算机资讯,转载请注明出处:WebService入门之CXF教程

关键词:

在CentOS上安装rvm

本文系统CentOS6.5 x64 如果是Ubuntu系统,先安装编译环境 Ruby On Rails是一个用Ruby语言写的开源Web框架,和J2EE,PHP等类似...

详细>>

mg电子游戏娱乐场Liunx PHP的GD库 增多 jpeg 文件的援救

GD Support enabled  代码如下 本文永久更新链接地址 :http://www.linuxidc.com/Linux/2014-11/109911.htm 很显然多了个 JPEG Support en...

详细>>

SVN冲突

多人并行开发操作svn时,经常会遇到各种冲突,包括文件冲突(textconflict)与树冲突(tree conflict)。 svn log -r 4:5; ...

详细>>

Hadoop2.5.2 新特性

YARN YARN的REST API支持write/modify操作。用户可以通过RESTAPI提交和杀死一个应用。 时间线存储到YARN中,用来存储通用的和...

详细>>