Maven:
<!-- WebService -->
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
<version>3.0.4</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http</artifactId>
<version>3.0.4</version>
</dependency>
<dependency>
<groupId>org.apache.neethi</groupId>
<artifactId>neethi</artifactId>
<version>3.0.3</version>
</dependency>
这里的org.apache.neethi的版本最好是3.0.3 不然你使用了别人的webservice可能会报错 我试过用3.0.2报错
: javax.wsdl.WSDLException: WSDLException: faultCode=PARSER_ERROR: java.lang.RuntimeException: Cannot create a secure XMLInputFactory
具体原因不清楚
还有记得别加这个
不然还是报错
Caused by: org.apache.cxf.BusException: No DestinationFactory was found for the namespace http://schemas.xmlsoap.org/soap/http.
webxml:
<servlet>
<servlet-name>CXFService</servlet-name>
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>CXFService</servlet-name>
<url-pattern>/ws/*</url-pattern>
</servlet-mapping>
url-pattern自定义,就是你访问webservice的地址
Springxml:
<!-- 接口的实现类声明 -->
<bean id="自定义" class="写你webservice接口的实现类" />
<!-- 默认自带日志输出 -->
<bean id="inMessageInterceptor" class="org.apache.cxf.interceptor.LoggingInInterceptor" />
<bean id="outLoggingInterceptor" class="org.apache.cxf.interceptor.LoggingOutInterceptor" />
<!-- 发布WebService -->
<jaxws:server id="自定义" serviceClass="这里写你接口不是实现类"
address="/自定义访问webservice的地址">
<jaxws:serviceBean>
<ref bean="自定义接口的实现类" />
</jaxws:serviceBean>
<jaxws:inInterceptors>
<ref bean="inMessageInterceptor" />
</jaxws:inInterceptors>
<jaxws:outInterceptors>
<ref bean="outLoggingInterceptor" />
</jaxws:outInterceptors>
</jaxws:server>
webservice接口:
package ws.spring.server;
import javax.jws.WebMethod;
import javax.jws.WebService;
@WebService
public interface UserWS {
@WebMethod
public UserBean getUserById(int id);
}
webservice实现类 :
package ws.spring.server;
import javax.jws.WebService;
@WebService
public class UserWSImpl implements UserWS {
public UserWSImpl(){
System.out.println("初始化 UserWSImpl");
}
@Override
public UserBean getUserById(int id) {
System.out.println("server getUserById:"+id);
return new UserBean(1, "张三");
}
}
运行输入地址: /ws/自定义的webservice 地址
分享到:
相关推荐
jws与spring发布WebService
cxf与spring发布WebService
这个是cxf+spring发布webservice和restservice的服务端项目
linux环境下,cxf整合spring发布webservice源码
CXF3.1+Spring4.1发布webservice服务的例子,内附说明,方便以后自己回顾这个过程。里面已经包含必须引用的jar包,不用再到处去收集。
NULL 博文链接:https://lichaobao.iteye.com/blog/2142754
简单例子:axis2整合spring发布webservice,以及session的管理
在网上找了很久的资料,接口已经跟客户对接,特编写了代码文档和附带jar包,并含其他网站的参考地址,注意jdk环境要1.6或以上版本
Spring+CXF 发布WebService服务
NULL 博文链接:https://vincents.iteye.com/blog/1469183
spring集成axis发布webservice源码 spring集成axis发布webservice源码 spring集成axis发布webservice源码 spring集成axis发布webservice源码
MyEclipse下的Xfire Spring Hibernate 发布WebService
Xfire Spring Hibernate 发布WebService(源码) Xfire1.2 Spring 2.0 Hibernate 3 发布WebService 一、准备工作 1、下载安装MyEclipse6.5 2、下载安装MySQL Server 5.1 3、下载MySQL驱动 mysql-connector-java...
CXF+Spring+Tomcat发布WebService
本实例工程使用Apache CXF组件快速开发WebService。基于Spring框架,使用了Maven项目,但由于时间原因,只使用了Maven Project的框架,还是使用lib文件夹存放所需的cxf库,传入传出对象支持Json格式。
将下载的demo(包括serviceserverdemo及serviceclientdemo,bat文件在serviceclientdemo的src下)导入eclipse即可运行使用,编译时可能需要修改jdk版本,如果导入有错,可新建web项目,按所下载demo的结构搭建即可,...
axis2和spring结合发布WebService源码
webservice7 spring的bean发布为webservice
使用spring集成cxf,在两个web project里发布及调用webservice server端使用spring+springmvc+mybatis+cxf,client端使用struts2+spring+hibernate+cxf 两个工程均为myeclipse project,包含所有除myeclipse自带以外...