| 失效链接处理 | 
| 彻底了解|利用Apache CXF框架开发WebService  PDF 下载 
	本站整理下载: 
	相关截图:  
	主要内容: 
		1:WebService中支持的数据类型 
		WebService中几乎所有的数据类型都是支持的 
		基本的数据类型 
		引用的数据类型 
		2:CXF框架的使用 
		CXF框架:CXF就是一个WebService的框架、在生产环境中一般情况下我们都使用框架来做开发、这个框架简单的说就是将WebService的开发给简化了、而且还新增了拦截器 
		CXF框架的使用:代码不需要改变只是需要导入这个CXF的包就可以了 
		注意:导包 
		  Project structure ----->libaries----->点击+找到包所在的文件夹----->Modles---->dependences---->找到他选中----->应用 
		3:拦截器的使用 
		需求:我们需要知道客户端传递给服务端的数据格式长啥样、同时也需要知道服务端接受到客户端的数据长啥样? 
		 拦截器 
		  客户端的出拦截器 
		客户端的入拦截器 
		服务端的出拦截器 
		服务端的入拦截器 
		要知道客户端传递给服务端的数据长啥样? 用客户端的出拦截器 
		要知道服务端接受到客户端的数据长啥样? 服务端的入拦截器 
		要知道数据长啥样的话在我们的CXF中提供了日志拦截器 
		实现功能 
		1:给客户端添加日志拦截器 
		//第一步:获取客户端的对象 
		Client client=ClientProxy.getClient(userService); 
		//第二步:找到拦截器列表 
		List<Interceptor<? extends Message>> outInterceptors = client.getOutInterceptors(); 
		//添加日志拦截器 
		outInterceptors.add(new LoggingOutInterceptor()); 
		客户端传递给服务端的数据的格式 
		Encoding: UTF-8 
		Content-Type: text/xml 
		Headers: {Accept=[*/*], SOAPAction=[""]} 
		Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><ns2:getStr xmlns:ns2="http://server.qf.com/"><arg0>美女</arg0></ns2:getStr></soap:Body></soap:Envelope> 
		2:给服务端添加入拦截器 
		EndpointImpl endPoint = (EndpointImpl) Endpoint.publish(PATH, new UserService()); 
		//看看有木有和日志相关的呢? 
		List<Interceptor<? extends Message>> inInterceptors = endPoint.getInInterceptors(); 
		//添加日志的入拦截器 
		inInterceptors.add(new LoggingInInterceptor()); 
		服务器端接受到的信息如下 
		Address: http://127.0.0.1:8888/Day1807_WebService_Server_02/bobo?wsdl 
		Encoding: UTF-8 
		Http-Method: GET 
		Content-Type: text/xml 
		Headers: {Accept=[*/*], Cache-Control=[no-cache], connection=[keep-alive], content-type=[text/xml], Host=[127.0.0.1:8888], Pragma=[no-cache], User-Agent=[Apache CXF 2.5.9]} 
		4:完成一个需求:开发一个带有权限认证的WebService 
		举例:比如说我需要 只有用户名是xiaobobo 密码是  123那么这个WebService才允许访问 
		逻辑(选择客户端的出拦截器 来添加如下内容) | 



 
     苏公网安备 32061202001004号
苏公网安备 32061202001004号


 
    