CXF webservice 示例程序及详解
来源:互联网 发布:淘宝没有货源怎么办 编辑:程序博客网 时间:2024/06/05 21:15
1.CXF 所需jar包列表如下(如不全,请根据报错信息适当的增加jar包)
cxf-2.7.4.jar
stax2-api-3.1.1.jar
woodstox-core-asl-4.2.0.jar
wss4j-1.6.10.jar
xml-resolver-1.2.jar xmlschema-core-2.0.3.jar
geronimo-javamail_1.4_spec-1.7.1.jar
geronimo-jaxws_2.2_spec-1.1.jar
geronimo-jms_1.1_spec-1.1.1.jar
geronimo-servlet_3.0_spec-1.0.jar
jetty-server-8.1.7.v20120910.jar
neethi-3.0.2.jar
2.web.xml配置的说明
增加如下代码:
<!-- cxf配置 -->
<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>/services/*</url-pattern>
</servlet-mapping>
配置说明:
servlet-name:servlet的名称
servlet-class:servlet的对应处理类
load-on-startup:设置程序启动时自动加载此servlet
url-pattern:要匹配的url链接
3.spring-service.xml配置的说明
在beans中增加xml效验脚本
需要加入xmlns:jaxws="http://cxf.apache.org/jaxws"和
http://cxf.apache.org/jaxwshttp://cxf.apache.org/schemas/jaxws.xsd
需要引入CXF的官方配置文件
<import resource="classpath:META-INF/cxf/cxf.xml" /> <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" /> <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
内容中增加如下代码:
<!-- 请求的参数等相关日志记录拦截器-->
<bean id="inMessageInterceptor" class="org.apache.cxf.interceptor.LoggingInInterceptor"> </bean>
<!-- 返回的参数等相关日志记录拦截器--> <bean id="outLoggingInterceptor" class="org.apache.cxf.interceptor.LoggingOutInterceptor" />
<!-- 采用jaxws:server方式 --> <jaxws:server id="jkfwService" serviceClass="webservice.declare.IJkfwService" address="/IJkfwService" bindingId="http://schemas.xmlsoap.org/wsdl/soap/http"> <jaxws:serviceBean> <bean class="webservice.declare.impl.JkfwService" /> </jaxws:serviceBean>
<jaxws:inInterceptors> <ref bean="inMessageInterceptor" /> </jaxws:inInterceptors> <jaxws:outInterceptors> <ref bean="outLoggingInterceptor" /> </jaxws:outInterceptors>
</jaxws:server>
配置说明:
serviceClass:webservice对应的接口类
address:请求的WSDL的请求路径
bindingId:webservice请求使用的协议类型
jaxws:serviceBean:webservice的实现类
jaxws:inInterceptors:请求的参数等相关日志记录拦截器
jaxws:outInterceptors:返回的参数等相关日志记录拦截器
4.webservice接口配置说明示例代码如下:
/**
* <ol>
* date:2012-1-11 editor:fanlei
* <li>健康卡信息采集的WebService服务接口</li>
* </ol>
* @author <a href="mailto:ifanvip@gmail.com">fanlei</a>
* @version 1.0
* @since 1.0
*/
@WebService (targetNamespace="http://webservice.web.jkfw",name="IJkfwServicePortType",portName="IJkfwServiceHttpPort" ,serviceName="IJkfwService")
public interface IJkfwService {
public @WebResult(name="out",targetNamespace ="http://webservice.web.jkfw") String call(@WebParam(name="in0",targetNamespace ="http://webservice.web.jkfw") String user, @WebParam(name="in1",targetNamespace ="http://webservice.web.jkfw") String password, @WebParam(name="in2",targetNamespace ="http://webservice.web.jkfw") String xmlStr);
}
代码说明:
@WebService:必选的标注。用于导出的服务接口及其实现类
targetNamespace:定义导出的服务接口的名域(namespace),默认是倒置的服务接口Java包名
name:定义导出的服务接口的名字,对应于WSDL文档中
wsdl:portType。默认是服务接口的Java类名加PortType
serviceName:定义服务名,与名域一起唯一标识一个服务。默认是其Java类名
portName:对应WSDL文档中的wsdl:port元素。默认是Java类名加Port
@WebResult:可选的标注,用于指定返回值的使用方式
name:返回值在WSDL文件中的名字。默认是return
targetNamespace:对应的名域。默认是服务接口的名域
header: true或者false(默认),指定该参数是否在SOAP消息头部发送
@WebParam,可选的标注,用于指定方法参数的使用方式
Name:在WSDL文档中的名字,默认是arg0,arg1…
targetNamespace:对应的名域。默认是服务接口的名域
header: true或者false(默认),指定该参数是否在SOAP消息头部发送
4.webservice实现类配置说明示例代码如下:
@WebService(endpointInterface ="webservice.declare.IJkfwService")
publicclass JkfwServiceimplements IJkfwService {
。。。。。。。。(具体实现代码不在书写)
}
代码说明:
@WebService(endpointInterface = "webservice.declare.IJkfwService")
实现类中只需指定该实现类知道的webservice接口即可
温馨提示:如果你读了这篇文章对你有所启发,请评论下,你的支持是我的无限动力!谢谢!
示例及其源码请去本人资源库下载,下载地址:http://download.csdn.net/detail/sunbaojin5213344/5444659!
- CXF webservice 示例程序及详解
- cxf-webservice完整示例
- webservice详解(CXF)
- CXF WebService 2 入门示例
- Webservice介绍,CXF入门程序
- webservice cxf与spring详解
- WebService技术详解(二): CXF
- WebService技术详解(二): CXF
- WebService进阶以及CXF详解
- webservice cxf+spring+WS-security配置示例
- springmvc 集成apache cxf 开发webservice 示例
- springmvc 集成apache cxf 开发webservice 示例
- WebService示例详解
- WebService核心文件【server-config.wsdd】详解及调用示例
- Hadoop示例程序WordCount详解及实例
- Hadoop示例程序WordCount运行及详解
- Hadoop示例程序WordCount详解及实例
- Hadoop示例程序WordCount详解及实例 .
- dede 织梦arclist标签里的if用法
- android时间比较
- 【导出Excel】Error accessing COM components
- 九度OJ 1001 A+B for Matrices
- 一些注解
- CXF webservice 示例程序及详解
- _ConnectionPtr.CreateInstance(__uuidof(Connection)) 返回 E_NOINTERFACE
- 单点登录SSO
- java中的多线程
- Linux 文件排序sort 应用
- 杭电2048
- Win7(64bit)搭建SVN
- 吃糖果(hdu1205数学)
- 基于JSP的论坛管理系统