在S2SH中添加Web Service,怎么CXF集成SSH

 我来答
miniappYoh44tFFDbwZi
2016-03-05 · 请开发者输入账号签名
miniappYoh44tFFDbwZi
采纳数:14074 获赞数:18289

向TA提问 私信TA
展开全部
下面是:beanContext-spring-cxf.xml 中的配置;(一定要注意顶部引入的beans里面的spring 配置一定要和你spring的版本一样不然不行哦)

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://cxf.apache.org/jaxws
http://cxf.apache.org/schemas/jaxws.xsd">

<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" />

<!-- 配置userWs -->
<bean id="userWs" class="com.flmk.urms.cxf.impl.UserLoginServiveImpl">
<property name="userService" ref="userService" />
</bean>

<!-- 要暴露给外部调用的接口,address:请求路径 -->
<jaxws:endpoint implementor="#userWs" address="/userLogin"></jaxws:endpoint>
</beans>

Web.xml 中的配置(一定记得在里面添加这么一段,不然启动报错哟。);

<servlet>
<servlet-name>CXFService</servlet-name>
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
<load-on-startup>30</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>CXFService</servlet-name>
<url-pattern>/ws/*</url-pattern>
</servlet-mapping>

还有就是jar包的问题,这个网上到时一大堆都有也可以在官网去下载:http://cxf.apache.org/download.html
cxf-2.3.3.jar
geronimo-annotation_1.0_spec-1.1.1.jar
geronimo-jaxws_2.2_spec-1.0.jar
geronimo-stax-api_1.0_spec-1.0.1.jar
geronimo-ws-metadata_2.0_spec-1.1.3.jar
jaxb-api-2.2.1.jar
jaxb-impl-2.2.1.1.jar
neethi-2.0.4.jar
wsdl4j-1.6.2.jar
XmlSchema-1.4.7.jar
wstx-asl-3.2.9.jar
以上包是基本最少而且缺一不可的。其它包仅需求再加。

下面是接口的具体写法:

package com.flmk.urms.cxf;

import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;

import com.flmk.urms.entity.TUser;

@WebService
public interface UserLoginServiceI {

@WebMethod
public TUser userLogin(@WebParam(name="userName") String userName,@WebParam(name="passWord") String passWord);
}

接口实现类的写法:

package com.flmk.urms.cxf.impl;

import javax.annotation.Resource;
import javax.jws.WebService;

import org.springframework.beans.factory.annotation.Autowired;

import com.flmk.urms.core.user.service.UserService;
import com.flmk.urms.cxf.UserLoginServiceI;
import com.flmk.urms.entity.TUser;

@WebService
public class UserLoginServiveImpl implements UserLoginServiceI{

@Autowired
private UserService userService;

@Resource
public void setUserService(UserService userService) {
this.userService = userService;
}

@Override
public TUser userLogin(String userName, String passWord) {
return userService.userAuthenticate(userName, passWord);
}

}

基本上就是以上这些配置了,再次记录以便以后忘记。。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式