`
darrenzhu
  • 浏览: 782396 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

sapjco3 notes

    博客分类:
  • Java
阅读更多
sapjco
https://support.sap.com/en/product/connectors.html
Connectors
Communication Between SAP Systems and Other SAP or Non-SAP Systems
SAP connectors allow the integration of different applications and technologies with SAP systems via open standards. The connectors are means for technical interoperability of SAP components (written in ABAP or ABAP Objects) and other components (e. g. written in Java, C++, Visual Basic, .NET, etc.).

最完整的文档就是下载一个zip包,比如WINDOWS_ON_IA64_64BIT,查看里面的文档,里面详细简绍了安装、API等知识。

安装结论
JCO3 只需要2个文件: sapjco3.dll, sapjco3.jar





测试安装成功
java -jar sapjco3.jar
即可,如果能跳出下面的页面说明安装成功,根本不需要自己写测试代码来测试安装是否成功。




java -jar sapjco.jar 会得到失败的页面,原因,sapjco.jar是JCO2,是以前版本的,所以sapjco3.dll并不符合需求。


问题1 Can't load IA 64-bit .dll
JCO.nativeInit(): Could not initialize dynamic link library sapjcorfc [C:\Windows\System32\sapjcorfc.dll: Can't load IA 64-bit .dll on a AMD 64-bit platform].

原因:
没有放置AMD版本的sapjco3.dll到System32里面
JDO3只有一个dll文件,即sapjco3.dll
JDO2有2个dll文件,librfc32.dll,sapjcorfc.dll

问题2 no sapjcorfc
Exception in thread "main" java.lang.ExceptionInInitializerError: JCO.classInitialize(): Could not load middleware layer 'com.sap.mw.jco.rfc.MiddlewareRFC'
JCO.nativeInit(): Could not initialize dynamic link library sapjcorfc [no sapjcorfc in java.library.path]. java.library.path [E:\Java\jdk1.8.0_131\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;E:/jdk/bin/server;E:/jdk/bin;E:/jdk/lib/amd64;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;E:\mygit\Git\cmd;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;e:\Program Files\OpenVPN\bin;E:\tools\apache-maven-3.5.0\bin;E:\tools\mysql\bin;E:\tools\flyway-4.0.3_170328\flyway-4.0.3;E:\Program Files\TortoiseGit\bin;E:\Program Files\nodejs\;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;E:\AI\Anaconda3;E:\AI\Anaconda3\Library\mingw-w64\bin;E:\AI\Anaconda3\Library\usr\bin;E:\AI\Anaconda3\Library\bin;E:\AI\Anaconda3\Scripts;C:\Users\admin\AppData\Local\Microsoft\WindowsApps;E:\Program Files\nodejs\node_global;e:\Program Files (x86)\Fiddler2;e:\Program Files\Docker Toolbox;%USERPROFILE%\AppData\Local\Microsoft\WindowsApps;;E:\Program Files\eclipse-jee-oxygen-R-win32-x86_64\eclipse;;.]
at com.sap.mw.jco.JCO.<clinit>(JCO.java:639)
at com.yonghui.mms.msm.hub.utils.sqpjco2.SAPConnector.<init>(SAPConnector.java:17)
at com.yonghui.mms.msm.hub.utils.sqpjco2.SAPConnector.main(SAPConnector.java:96)


原因是测试代码用的基本JCO2写的代码,然后引入了sapjco.jar,而sapjco.jar所需要的dll文件又不存在,因为只放在了sapjco3.dll。最后删除sapjco.jar只保留新版sapjco3.jar,然后使用新版的测试代码进行调试接口。


简单测试代码
JcoTestManual.zip




注意: Linux环境下分号;要改成冒号:

编译
E:\ProjectsWorkSpace\workSpace1\JcoTestManual>javac src/com/darren/sapjco3/ClientSample.java -source src -d build -g -cp sapjco3.jar

works
javac src/com/darren/sapjco3/ClientSample.java -encoding "utf8" -d build -g -cp sapjco3.jar

代码里面有中文字符串内容,指定utf8编码进行编译, works
E:\ProjectsWorkSpace\workSpace1\JcoTestManual>javac -encoding "utf8" src/com/darren/sapjco3/ClientSample.java -d build -g -cp sapjco3.jar

运行
Run in project root path
E:\ProjectsWorkSpace\workSpace1\JcoTestManual>java -cp sapjco3.jar;build com.darren.sapjco3.ClientSample

Run in build folder in which the compiled classes are located, 注意”../sapjco3;.”是用分号分隔的2个目录,”.”表示的是当前目录
E:\ProjectsWorkSpace\workSpace1\JcoTestManual>build>java -cp ../sapjco3.jar;. com.darren.sapjco3.ClientSample

E:\ProjectsWorkSpace\workSpace1\JcoTestManual>build>java -cp ../sapjco3.jar;../build com.darren.sapjco3.ClientSample




JAVA+sapjco3连接SAP的两种Destination的创建方式
https://blog.csdn.net/weixin_41906839/article/details/80728227




  • 大小: 45.1 KB
  • 大小: 4.1 KB
  • 大小: 14.7 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics