您的位置:首页 > 编程语言 > Java开发

CXF结合spring

2015-09-01 10:53 309 查看
首先在项目中引进cxf的依赖

<properties>
        <cxf.version>2.6.14</cxf.version>
    </properties>
<!-- cxf -->
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
<version>${cxf.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http</artifactId>
<version>${cxf.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http-jetty</artifactId>
<version>${cxf.version}</version>
</dependency>

加入spring-cxf 配置文件
 <?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: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://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" />

<!-- 注意下面的address,这里的address的名称就是访问的WebService的name <jaxws:server id="loginWebService" -->

<jaxws:endpoint id="loginWebService" address="/loginWebService"
implementor="#loginWebServiceImpl">
</jaxws:endpoint>
 </beans>
webservice接口

package com.zoe.hip.platform.webservice.auth;

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

@WebService
public interface ILoginWebService {

@WebMethod
public String getLoginToken(@WebParam(name = "userName") String username,@WebParam(name = "password")String password);
}


webservice实现类
package com.zoe.hip.platform.webservice.auth.impl;

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

import org.springframework.stereotype.Component;

import com.zoe.hip.platform.service.IAuthService;
import com.zoe.hip.platform.webservice.auth.ILoginWebService;

/**
*
* http://{host_ip}/webservice/loginWebService?wsdl */
@Component("loginWebServiceImpl")
public class LoginWebServiceImpl implements ILoginWebService {
@Resource(name = "authService")
private IAuthService authService;

/**
* 。net webapp 传入账号 密码 返回token 1:表示账号密码错误
*/
@WebMethod(operationName = "getLoginToken")
public String getLoginToken(String username, String password) {
String token = "-1";
try {
token = authService.createToken(username, password);
} catch (Exception e) {
e.printStackTrace();
return token;
}
return token;
}

}


web.xml配置
<!--========================= CXF配置 start========================= -->
<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>/webservice/*</url-pattern>
</servlet-mapping>

<!--========================= CXF配置 end========================= -->
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: