Web Service CXF的工作流程
我们一起走进系统的内部,跟随每一个调用,去透视系统的每一个层面。
一、我们定义整个目录都在CXFServlet的监控之下
<servlet> <servlet-name>CXFServlet</servlet-name> <servlet-class> org.apache.cxf.transport.servlet.CXFServlet </servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>CXFServlet</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping>
从外界发过来的请求都会交给 CXFServlet进行处理。
二、外部应用从外部发来联机请求request http://......./BlueService#wsdl
三、根据在web.xml中的定义
<jaxws:endpoint id="BlueService" address="/BlueService" implementor="#WebBlueService"/>
其中的 WebBlueService 是在配置文件当中定义的一个提供服务的service组件
上面的请求会交给WebBlueService这个WebService实例去处理
四、WebBlueService的实现
由于WebBlueService是一个类的实例,所以需要知道这个类的定义,这个类需要继承一个Interface,在Interface当中需要指定要发布的借口中的方法声明。
package com.blue;
WebService(targetNamespace="com.blue") public interface IService { /** * desc * @param input * @return */ @WebMethod(operationName = "helloworld") @WebResult(partName = "res") Result helloworld(@WebParam(name = "BlueInput") BlueInput input); ... }
实现类需要实现这个接口
package com.blue;
public class IServiceImp implements IService { String helloworld(BlueInput input){ Result result; ... return result; } }
五、由于需要在启动的是进行初始化加载,所以在配置文件当中注入实例
<bean id="WebBlueService" class="com.blue.IServiceImp" ></bean>
SUCCESS
posted on 2018-08-20 22:12 lightblueme 阅读(202) 评论(0) 编辑 收藏 举报