通过CFX发布WebService(一)
发布WebService的方法很多。如XFire,CFX等。现在首先介绍下怎样通过CFX来发部一个WebService。
(1) 首先,是从Apache官方网站获取CFX的Java包。其地址是:http://cxf.apache.org/download.html。 在该网页上可以下载最新的CFX 的Java开发包。
(2) 其次,新建一个简单的java工程,不必是web工程,只是通过eclipse或者myeclipse新建一个java project。将CFX的java开发包复制到该工程的classpath目录下。
当新建的是一个web工程时,只需要将该工程复制到lib文件夹中。
(3) 在该工程中新建一个普通的接口。
package com.example.webservice;
import javax.jws.WebParam;
import javax.jws.WebService; @WebService
public interface HelloWorldService { public String sayHello(@WebParam(name="userName")String userName); }
注意到:上面的接口中有一个注解:@WebService,该注解表示这个是一个WebService服务
(4) 同时新建一个类,HelloWorldServiceImpl实现该接口。
package com.example.webservice;
import javax.jws.WebMethod;
import javax.jws.WebService; @WebService(endpointInterface="com.example.webservice.HelloWorldService", serviceName="helloWorldService")
public class HelloWorldServiceImpl implements HelloWorldService { @WebMethod
public String sayHello(String userName) {
System.out.println("HelloWorldServiceImp.sayHello("+userName+")");
return "Hello,"+userName;
} }
注意:这个实现类中,也有注解,一个是@WebService注解,该注解中有2个部分,一个是endpointInterface="com.example.webservice.HelloWorldService",
这里的内容是上面的接口的完整包名和接口名组成的。另一个是serviceName="helloWorldService",这个是用来现实该webService的入口的,即该webservice的名称为
helloWorldService。当调用该webservice时,其地址应该是:htt://IpAddress:port/helloWorldService
还有另一个注解:@WebMethod,该注解用来标识了webService的实现方法。
现在主要的webservice的功能已经实现了,所要做的是将webservice进行发布。发布该webservice的方法有好几种,可以用Spring发布,也可以直接运行一个main还是发布。
现在演示的是用一个main函数发布该webservice。
新建一个类,该类中有一个main函数。
import javax.xml.ws.Endpoint; import com.lenovo.webservice.HelloWorldServiceImpl; public class ServerTest { public static void main(String[] args) {
System.out.println("Starting Server");
HelloWorldServiceImpl helloWorldServiceImpl=new HelloWorldServiceImpl();
String address="http://localhost:8090/helloWorldService";
Endpoint.publish(address, helloWorldServiceImpl);
System.out.println("Start success"); } }
运行该类之后,该webservice就已经发布了。
此时,可以在其他的程序中调用该webservice了。
通过CFX发布WebService(一)的更多相关文章
- springboot+cfx实现webservice功能
一.开发服务端 1.新建工程 cfx-webservice ,最终的完整工程如下: pom.xml如下: <?xml version="1.0" encoding=" ...
- 使用CXF发布WebService
这里普及一下WebService和cxf的知识.关于webservice和cxf: WebService.各种提供服务的组件 .企业总线.通讯总线(ESB)CXF:是一个SOA框架,Axi ...
- CXF发布webService服务以及客户端调用
这篇随笔内容是CXF发布webService服务以及客户端调用的方法 CXF是什么? 开发工作之前需要下载CXF和安装 下载地址:http://cxf.apache.org 安装过程: <1&g ...
- Web环境使用相对路径发布Webservice
常我们的Webservice服务的发布地址都将是一个相对路径,在与Spring一起使用时我们需要引入Cxf配置Webservice的schema,如jaxws,用以定义对应的Webservice. & ...
- VS2015发布Webservice
第一步:开启IIs:在控制面板程序——>程序功能——>打开或关闭windows功能,把“Internet信息服务”下面的“FTP服务器”.“Web管理工具”.“万维网服务”全部勾上,然后点 ...
- Spring整合CXF之发布WebService服务
今天我们来讲下如何用Spring来整合CXF,来发布WebService服务: 给下官方文档地址:http://cxf.apache.org/docs/writing-a-service-with-s ...
- 真正的轻量级WebService框架——使用JAX-WS(JWS)发布WebService
WebService历来都很受重视,特别是Java阵营,WebService框架和技术层出不穷.知名的XFile(新的如CXF).Axis1.Axis2等. 而Sun公司也不甘落后,从早期的JAX-R ...
- CXF整合Spring发布WebService实例
一.说明: 上一篇简单介绍了CXF以及如何使用CXF来发布一个简单的WebService服务,并且介绍了客户端的调用. 这一篇介绍如何使用CXF与spring在Web项目中来发布WebService服 ...
- 使用CXF发布WebService服务简单实例
一.说明: 前面介绍了使用axis2来发布Webservice服务,现在介绍一种更popular,更高效的Webservice服务发布技术:CXF Apache CXF = Celtix + XFir ...
随机推荐
- python2.0_s12_day11_SqlAlchemy使用介绍
SqlAlchemy ORM ORM的解释; 简单点:对象关系映射. 需求:我们写一个主机管理,把主机信息存在数据库,一开始我们编程不熟练的时候,执行命令时候要调用数据库,会把相应的SQL语句写到代码 ...
- nagios监控mysql
在nagios上部署check_mysql_health 监控mysql 博客分类: 架构 本监控为基于nagios服务器主动监控方法,利用check_mysql_health实现多种监控模式: ...
- python cx_oracle单个表中批量插入数据
- Serlvet学习笔记之四—对文件的操作
1.读文件 package com.demo; import java.io.BufferedReader; import java.io.FileReader; import java.io.Pri ...
- web 前端规范实例
<!DOCTYPE html> <html> <head> <title>tmall</title> <!-- 为了被搜索引擎作为流量 ...
- Eclipse+pydev解决中文显示和注释问题的方法大全
Eclipse+pydev解决中文显示和注释问题的方法大全 Eclipse的设置 window->preferences->general->editors->textedit ...
- activemq 实战 四 传输连接器-Transport connectors 4.2
In order to exchange messages, producers and consumers (clients) need to connect to the broker. This ...
- Elasticsearch 常用基本查询
安装启动很简单,参考官网步骤:https://www.elastic.co/downloads/elasticsearch 为了介绍Elasticsearch中的不同查询类型,我们将对带有下列字段的文 ...
- vux 全局注册组件
背景:调试better-scroll的时候进行封装,作为组件来调用: 希望:全局注册组件: 1,在src的main.js下: 这样就可以用了:
- 使用as3crypto在Flex中实现AES加密
要在Flex中实现AES加密,可以通过as3crypto实现.但是as3crypto本身的用法比较复杂,一般是封装一下再调用. 下面是9RIA上的一篇文章给出的一个实现,使用中稍感不方便(见注释): ...