eas、shr使用sap jco方式对接SAP,部署linux服务器踩得坑
eas(包括shr)现在和SAP对接的方式一般是通过jco调用sap的接口,在开发前,你必须拿到3个文件:
1、sapjco3.dll (windows操作系统使用);
2、sapjco3.jar (供java代码调用);
3、libsapjco3.so(linux操作系统使用)
如果没有正确的放置sapjco3.dll(windows) 或libsapjco3.so(linux)文件时,一般会报NoClassDefFoundError的错误:
一、本地开发环境(windows系统)
在本地开发时一般使用windows系统,BOS工具开发,可以将sapjco3.jar放到lib/sp下
并在xxxxx_lib.xml文件里注册sapjco3.jar的路径
再将sapjco3.dll复制到c:/windows/system32
二、测试环境(linux系统)
网上说要把libsapjco3.so放到$JAVA_HOME 下,先在linux服务器上echo $JAVA_HOME,
发现是/data/kingdee8.6/eas/ibm-jdk1.6,于是将libsapjco3.so复制到了/data/kingdee8.6/eas/ibm-jdk1.6/jre/lib/amd64下,并将sapjco3.jar复制到二开补丁包的目录下(lib/sp),重启服务器还是报NoClassDefFoundError,咨询总部大佬,发现eas服务器会在启动时,重置环境变量JAVA_HOME,具体位置在\eas\server\bin\set-server-env.sh里
于是将libsapjco3.so复制到了/data/kingdee8.6/eas/oracle-jdk1.8/jre/lib/amd64下,重启服务器后,调通sap接口!
eas、shr使用sap jco方式对接SAP,部署linux服务器踩得坑
本文2024-09-16 21:58:47发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-45153.html