`
isiqi
  • 浏览: 16079443 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Linux下Java如何连SAP

阅读更多

本文档测试环境:

1Linux操作系统版本:

Red Hat Enterprise Linux Server release 5

2.6.18-8.el5

2jdk版本

1.5.0_16

Linux下连Javasap步骤

1)下载sapjco.jar

请到service.sap.com/connectors,下载sapjco.jar,本案下载的是sapjco-linuxintel-2.1.8.zip

2)解压zip文件,将其中librfccm.solibsapjcorfc.so两个文件,拷贝复制到$JAVA_HOME/jre/lib/i386/server,并将sapjco.jar复制到特定目录下,然后设置CLASSPATH变量即可,本案export CLASSPATH=.:/usr/java/jdk1.5.0_16/lib:/usr/java/jdk1.5.0_16/jre/lib:/usr/wuxq/sapjco.jar

3)在进行sap rfc连接的时候,需要libstdc++-libc6.2-2.so.3库文件,可从csdn上下载,http://download.csdn.net/source/648150,将libstdc++-libc6.2-2.so.3库文件复制到librfccm.solibsapjcorfc.so文件所在的目录即可;

4)至此,已经完成jcolinux下的安装,下一步工作就是写一个测试用例,本案调用了一个sapRFC函数,该函数传如一个字符串参数,返回一个整形值;

·创建JCO.Client,并连接

public boolean connect(){

boolean rtn = false;

try{

client = JCO.createClient(sid, username,

password,language,host,系统编号);

//sid-集团号;language-ZH,EN等;系统编号-00

client.connect();

rtn = true;

}catch(Exception e){

e.printStackTrace();

}

return rtn;

}

·创建RFC函数

public JCO.Function createFunction(String name) throws Exception {

try {

JCO.Repository mRepository;

mRepository = new JCO.Repository("ARAsoft", client);

IFunctionTemplate ft = mRepository.getFunctionTemplate(name

.toUpperCase());

if (ft == null)

return null;

return ft.getFunction();

} catch (Exception ex) {

throw new Exception("Problem retrieving JCO.Function object.");

}

}

·置传入参数、调用函数、返回值处理

public int ZSD_CALCULATE_VBELN_SO() throws Exception{

JCO.Function function = createFunction("ZSD_CALCULATE_VBELN_SO");

//设置参数

JCO.ParameterList input = function.getImportParameterList();

input.setValue("0020100306", "VGBEL");

//执行函数

client.execute(function);

//返回结果处理

JCO.ParameterList output = function.getExportParameterList();

int num = output.getInt("NUMS");

return num;

}

·断开连接

public void disConnect(){

client.disconnect();

}

5)编译运行JcoTest类,可以得到返回结果1,与在sap/r3中执行函数ZSD_CALCULATE_VBELN_SO,返回结果一致。

6)相关说明:

·jco支持连接池,因此建议在应用服务里使用jco连接池;

·示例代码,只是案例演示代码,并无做任何优化处理;

·更详细说明,请参阅JCo Tutorial.pdf

·附件,请在csdn上下载,查找"jco for linux"即可

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics