SAP JCo:JCoDestination与JCoClient

时间:2012-10-24 08:04:11

标签: java sap bapi jco

我正在使用JCo库从Java调用SAP中的函数。到目前为止我的调用工作正常,但是当我在互联网上寻求帮助时,总会有JCoClient用于获取函数,进行提交等。

但是JCO 3中不存在JCoClient类。

相反,我使用我使用配置文件创建的JCoDestination实例。

JCoClient和JCoDestination有什么区别?为什么没有人谈论JCoDestination,但总是JCoClient?

2 个答案:

答案 0 :(得分:9)

SAP Java Connector已完全从2到3版本重新编写。旧的JCO.Client类已经被JCoDestination取代,但它不仅仅是名称更改,库架构完全改变了,因此将代码从JCo 2移植到JCo 3不仅仅是更改类名。 例如,要使用Jco 2连接到SAP服务,必须编写如下内容:

  

JCO.Client client = JCO.createClient(...);

     

client.connect();

而对于JCo 3,你有:

JCoDestination destination = JCoDestinationManager.getDestination(serviceName);

您可以在this URL找到有关这两个库的信息。此外,在this link处有一个从2到3的迁移的详细指南。后一个链接也可以从前一个链接的左侧索引访问,您可以从中访问有关两个版本中的客户端编程的信息。

答案 1 :(得分:3)

您将找到的大多数“内容”将隐式引用Java Connector的旧版本(2.x)。您仍然可以从SAP获取该版本,我鼓励您这样做 - 不要使用它,而是比较javadoc。您会看到类结构在2.x和3.x版本之间发生了根本性的变化(我会说更好)。但是,这意味着您必须重新编写许多示例,因为类名已更改。