xfire+spring 实践记录(一)

最近由于要做SOA的SAP接口,并且SAP接口是实时调用,采用了MQ+MB+SAP适配器方案,但是SAP适配器是自己开发的JCO调用实现。
这里我把SAP适配器做成了Web service。由于我的SAP是一个单独的web service项目,里面才有xfire实现了web service的服务端。
客户端采用采用spring+xfire的方式,将web service配置成一个spring bean通过 serviceFactory.getBean("youserver"),实例化web service接口。最终实现webservice 的调用,并且可以在这之上实现安全性。
源代码如下:
服务端:
1、接口:WebServiceSAP
package com.sap.jco.ws;
import java.util.Map;
public interface WebServiceSAP {
/**
* 发送rfc请求
* @param interfaceConfig
* @param param
* @param maplist
* @return
* @throws AppException
*/
public String sendRfc(Map interfaceConfig,String param,Map maplist);
/**
* 通过参数发送rfc请求
* @param interfaceConfig
* @param param
* @return
* @throws AppException
*/
public String sendRfcByParam(Map interfaceConfig, String param);

/**
* 测试
* @param interfaceConfig
* @param param
* @return
*/
public String wsTest(Map interfaceConfig, String param);

}
2、实现方法:WebServiceSAPImpl
package com.sap.jco.ws;


public class WebServiceSAPImpl implements WebServiceSAP {
int trasRows = 500;

public String sendRfc(Map interfaceConfig, String param, Map maplist){
String returnvalue="";
//具体实现方法
return returnvalue;
}

public String sendRfcByParam(Map interfaceConfig, String param){
String returnvalue="";
// 具体实现
return returnvalue;
}

public String wsTest(Map interfaceConfig, String param) {
return "web service test,input is:"+param;
}
}


3、服务端配置:
web.xml
<servlet>
<servlet-name>XFireServlet</servlet-name>
<servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>XFireServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>

4、服务部署
services.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>
<name>SAPService</name>
<namespace>http://www.dawnpro.com.cn/xserver</namespace>
<serviceClass>
com.sap.jco.ws.WebServiceSAP
</serviceClass>
<implementationClass>
com.sap.jco.ws.WebServiceSAPImpl
</implementationClass>
</service>
</beans>
5、启动服务,访问地址:
http://127.0.0.1:88/wssap/services/SAPService?WSDL地址,显示xml,说明web Service部署成功
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值