CXF能做什么:

1.它实现了JAX-WS APIS,可以方便地构建webservice,使用者不再面向wsdl,wsdl是很难生成和读懂的。

2.内部集成了spring。

3.实现了数据绑定,可以和多种数据类型绑定(不太懂).

4.支持RESTfule服务的开发。

5.CXF支持多样化的web service规格,包括:WS-Addressing,WS-Policy,WS-ReliableMessaging和WS-Security。

总之,支持开发各类web service,让开发变得更容易。(让学习变得更复杂)

如何将现有应用与CXF集成:

1.从传输层的角度:CXF可以和不同传输协议一起工作,例如:HTTP,JMS,甚至LOCAL,而local就是说,传输不需要跨机器,只是在内存中进行,那么你可以配置local transport,避免对象的序列化。

2.从绑定层的角度:bindings映射一个特别服务消息给特定的协议。CXF支持不同的绑定,比如SOAP绑定,它是缺省的。还有诸如Pure XML binding,他传输一个原始的xml而不像SOAP那样有个信封。还有HTTP Binding.

3.消息拦截和修改:

  JAX-WS Handlers:用来处理消息,可惜修改接收到消息的内容。

  Interceptors:提供了访问CXF能提供所有特性的机制。

4.发送二进制数据:CXF提供了一个机制,通过MTOM标准发送二进制数据,XML消息中正常的二进制数据会被BASE64编码,这会导致处理开销增大,也会导致消息长度增大,采取MTOM可以允许你发送大于内存的消息。