Java WebService服务
其中cxf框架 http://cxf.apache.org/
Apache CXF™: An Open-Source Services Framework
Overview
Apache CXF™ is an open source services framework. CXF helps you build and develop services using frontend programming APIs, like JAX-WS and JAX-RS. These services can speak a variety of protocols such as SOAP, XML/HTTP, RESTful HTTP, or CORBA and work over a variety of transports such as HTTP, JMS or JBI.
Apache CXF™是一个开源服务框架。CXF帮助您使用前端编程API(如JAX-WS和JAX-RS)构建和开发服务。这些服务可以使用各种协议(如SOAP、XML/HTTP、RESTful HTTP或CORBA),并通过各种传输(如HTTP、JMS或JBI)工作。
Features
CXF includes a broad feature set, but it is primarily focused on the following areas:
- Web Services Standards Support: CXF supports a variety of web service standards including SOAP, the WS-I Basic Profile, WSDL, WS-Addressing, WS-Policy, WS-ReliableMessaging, WS-Security, WS-SecurityPolicy, WS-SecureConverstation, and WS-Trust (partial).
- Frontends: CXF supports a variety of "frontend" programming models.
CXF implements the JAX-WS APIs. CXF JAX-WS support includes some extensions to the standard that make it significantly easier to use, compared to the reference implementation: It will automatically generate code for request and response bean classes, and does not require a WSDL for simple cases.
It also includes a "simple frontend" which allows creation of clients and endpoints without annotations. CXF supports both contract first development with WSDL and code first development starting from Java.
For REST, CXF also supports a JAX-RS frontend.
- Ease of use: CXF is designed to be intuitive and easy to use. There are simple APIs to quickly build code-first services, Maven plug-ins to make tooling integration easy, JAX-WS API support, Spring 2.x XML support to make configuration a snap, and much more.
- Binary and Legacy Protocol Support: CXF has been designed to provide a pluggable architecture that supports not only XML but also non-XML type bindings, such as JSON and CORBA, in combination with any type of transport.
To get started using CXF, check out the downloads, the user's guide, or the mailing lists to get more information!
Goals
General
- High Performance
- Extensible
- Intuitive & Easy to Use
Support for Standards
JSR Support
- JAX-WS - Java API for XML-Based Web Services (JAX-WS) 2.0 - JSR-224
- Web Services Metadata for the Java Platform - JSR-181
- JAX-RS - The Java API for RESTful Web Services - JSR-311
- SAAJ - SOAP with Attachments API for Java (SAAJ) - JSR-67
WS-* and related Specifications Support
- Basic support: WS-I Basic Profile 1.1
- Quality of Service: WS-Reliable Messaging
- Metadata: WS-Policy, WSDL 1.1 - Web Service Definition Language
- Communication Security: WS-Security, WS-SecurityPolicy, WS-SecureConversation, WS-Trust (partial support)
- Messaging Support: WS-Addressing, SOAP 1.1, SOAP 1.2, Message Transmission Optimization Mechanism (MTOM)
OpenAPI Specification (OAS) Support
- OAS 2.0 (classic Swagger specification)
- OAS 3.0.x (new revised specification)
Multiple Transports, Protocol Bindings, Data Bindings, and Formats
- Transports: HTTP, Servlet, JMS, In-VM and many others via the Camel transport for CXF such as SMTP/POP3, TCP and Jabber
- Protocol Bindings: SOAP, REST/HTTP, pure XML
- Data bindings: JAXB 2.x, Aegis, Apache XMLBeans, Service Data Objects (SDO), JiBX
- Formats: XML Textual, JSON, FastInfoset
- Extensibility API allows additional bindings for CXF, enabling additional message format support such as CORBA/IIOP
Flexible Deployment
- Lightweight containers: deploy services in Jetty, Tomcat or Spring-based containers
- JBI integration: deploy as a service engine in a JBI container such as ServiceMix, OpenESB or Petals
- Java EE integration: deploy services in Java EE application servers such as Apache Geronimo, JOnAS, Redhat JBoss, OC4J, Oracle WebLogic, and IBM WebSphere
- Standalone Java client/server
Support for Multiple Programming Languages
- Full support for JAX-WS 2.x client/server programming model
- JAX-WS 2.x synchronous, asynchronous and one-way API's
- JAX-WS 2.x Dynamic Invocation Interface (DII) API
- JAX-RS for RESTful clients
- Support for wrapped and non-wrapped styles
- XML messaging API
- Support for JavaScript and ECMAScript 4 XML (E4X) - both client and server
- Support for CORBA
- Support for JBI with ServiceMix
Tooling
- Generating Code: WSDL to Java, WSDL to JavaScript, Java to JavaScript
- Generating WSDL: Java to WSDL, XSD to WSDL, IDL to WSDL, WSDL to XML
- Adding Endpoints: WSDL to SOAP, WSDL to CORBA, WSDL to service
- Generating Support Files: WSDL to IDL
- Validating Files: WSDL Validation
开发文档:http://cxf.apache.org/docs/index.html
APIs:http://cxf.apache.org/javadoc/latest-2.3.x/
Java WebService服务的更多相关文章
- JAVA WEBSERVICE服务端&客户端的配置及调用(基于JDK)
前言:我之前是从事C#开发的,因公司项目目前转战JAVA&ANDROID开发,由于对JAVA的各种不了解,遇到的也是重重困难.目前在做WEBSERVICE提供数据支持,看了网上相关大片的资料也 ...
- 解决.NET 调用JAVA WEBService服务中文乱码问题
主要代码如下: String input ="中文" C#调用代码: String str = System.Text.Encoding.GetEncoding("UT ...
- 【Java EE 学习 80 下】【调用WebService服务的四种方式】【WebService中的注解】
不考虑第三方框架,如果只使用JDK提供的API,那么可以使用三种方式调用WebService服务:另外还可以使用Ajax调用WebService服务. 预备工作:开启WebService服务,使用jd ...
- Java创建WebService服务及客户端实现(转)
简介 WebService是一种服务的提供方式,通过WebService,不同应用间相互间调用变的很方便,网络上有很多常用的WebService服务,如:http://developer.51cto. ...
- Java创建WebService服务及客户端实现
简介 WebService是一种服务的提供方式,通过WebService,不同应用间相互间调用变的很方便,网络上有很多常用的WebService服务,如:http://developer.51cto. ...
- java访问webservice服务(一)
欢迎转载 http://www.cnblogs.com/shizhongtao/p/3433653.html 使用wsdl2java工具命令 一. 调出命令提示符cd到cxf的解压路径“D:\学 ...
- JAX-WS 学习一:基于java的最简单的WebService服务
JAVA 1.6 之后,自带的JAX-WS API,这使得我们可以很方便的开发一个基于Java的WebService服务. 基于JAVA的WebService 服务 1.创建服务端WebService ...
- java程序调用xfire发布的webService服务(二)
在上一篇的调用xfire发布的webService服务中,我只是从服务端返回了一个字符串给客户端,却没有测试从客户端传递数据给服务端.而实际应用中一般是不太可能只出现这样的应用场景的,因此我便更进一步 ...
- 通过Java WebService接口从服务端下载文件
一. 前言 本文讲述如何通过webservice接口,从服务端下载文件.报告到客户端.适用于跨系统间的文件交互,传输文件不大的情况(控制在几百M以内).对于这种情况搭建一个FTP环境,增加了系统部署的 ...
随机推荐
- abstract 和 interface 抽象类和接口的区别
初版:以后再整理. 接口是公开的,里面不能有私有的方法或变量,是用于让别人使用的,而抽象类是可以有私有方法或私有变量的, 另外,实现接口的一定要实现接口里定义的所有方法,而实现抽象类可以有选择地重写需 ...
- hbase报错之 Master is initializing
报错日志 ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing at org.apache.hadoop ...
- linux中安装gitlab和cicd(断网版)
1:先介绍一下怎么查找所需要的依赖包 #yum install rpmname--downloadonly --downloaddir=/rpmpath 例如:yum install gitlab-r ...
- Vue --》 如何在vue中调用百度地图
1.项目根目录下下载百度地图插件 npm install vue-baidu-map –save 2.在首页index.html中引入百度地图: <script type="text/ ...
- Tensorflow之CNN卷积层池化层padding规则
padding的规则 · padding=‘VALID’时,输出的宽度和高度的计算公式(下图gif为例) 输出宽度:output_width = (in_width-filter_wid ...
- [2019杭电多校第四场][hdu6621]K-th Closest Distance(主席树)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6621 题意为求区间[l,r]内第k小|a[i]-p|的值. 可以二分答案,如果二分的值为x,则判断区间 ...
- LCD应用程序测试
#include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl ...
- HDU-3665 Seaside
XiaoY is living in a big city, there are N towns in it and some towns near the sea. All these towns ...
- ES6精解:变量的解构赋值
1.数组的解构赋值 我们知道以前我们给一个变量赋值要这样如下: let a = 1; let b = 2; let c = 3; 但是ES6出来之后,我们可以这样: let [a, b, c] = [ ...
- MySQL 保存镜像实战操作( 拷贝方法 )
查看数据保存的位置 docker inspect --format='{{.Mounts}}' mxg_mysql 容器路径为:`/var/lib/mysql` ,宿主机数据保存在: /var/lib ...