日期:2014-05-16 浏览次数:20631 次
Apache CXF = Celtix+ XFire,开始叫 Apache CeltiXfire,后来更名为 Apache CXF 了,以下简称为 CXF。CXF 继承了 Celtix 和XFire 两大开源项目的精华,提供了对 JAX-WS全面的支持,并且提供了多种Binding 、DataBinding、Transport 以及各种 Format 的支持,并且可以根据实际项目的需要,采用代码优先(Code First)或者 WSDL 优先(WSDL First)来轻松地实现 Web Services 的发布和使用。Apache CXF已经是一个正式的Apache顶级项目。
CXF 支持多种 Web Services 标准,包含 SOAP、Basic Profile、WS-Addressing、WS-Policy、WS-ReliableMessaging 和 WS-Security。Frontends:CXF 支持多种“Frontend”编程模型,CXF 实现了 JAX-WS API (遵循 JAX-WS 2.0 TCK 版本),它也包含一个“simple frontend”允许客户端和 EndPoint 的创建,而不需要 Annotation 注解。CXF 既支持 WSDL 优先开发,也支持从 Java 的代码优先开发模式。容易使用: CXF 设计得更加直观与容易使用。有大量简单的 API 用来快速地构建代码优先的 Services,各种 Maven 的插件也使集成更加容易,支持 JAX-WS API ,支持 Spring 2.0 更加简化的 XML 配置方式,等等。支持二进制和遗留协议:CXF 的设计是一种可插拨的架构,既可以支持 XML ,也可以支持非 XML 的类型绑定,比如:JSON 和 CORBA。
-----------------------摘自《百度百科》-----------------------
package com.tiamaes.webservice.test; import javax.jws.WebMethod; import javax.jws.WebParam; import javax.jws.WebService; /** * <p>类描述: WebService服务端接口</p> * <p>修改人:Jaune </p> * <p>修改时间:2014-5-8 上午11:54:38 </p> * <p>修改备注: </p> * @version */ @WebService public interface HelloWorldService { @WebMethod public String syaHello(@WebParam(name="userName")String userName); }
package com.tiamaes.webservice.test.impl; import javax.jws.WebService; import com.tiamaes.webservice.test.HelloWorldService; /** * <p>类描述: WebService的具体实现 </p> * <p>修改人:Jaune </p> * <p>修改时间:2014-5-8 上午11:56:09 </p> * @version */ @WebService(endpointInterface="com.tiamaes.webservice.test.HelloWorldService",serviceName="helloWorldService") public class HelloWorldServiceImpl implements HelloWorldService { /* (non-Javadoc) * @see com.tiamaes.webservice.test.HelloWorldService#syaHello(java.lang.String) */ public String syaHello(String userName) { System.out.println("HelloWorldServiceImpl.sayHello("+userName+")"); return "Hello "+userName; } }实现也需要加上@WebService注解,并且在endpointInterface中指定接口类。
package com.tiamaes.webservice.server; import javax.xml.ws.Endpoint; import com.tiamaes.webservice.test.HelloWorldService; import com.tiamaes.webserv