2012-10-24 11 views
7

Ich rufe eine Funktion in SAP von Java mit der JCo-Bibliothek. Bisher meinen Anruf funktioniert, aber wenn ich um Hilfe im Internet suchen, gibt es immer ein JCoClient, das verwendet wird, um die Funktionen zu erhalten, so dass Commits usw.SAP JCo: JCoDestination vs. JCoClient

Aber ein JCoClient Klasse existiert nicht in JCO 3.

Stattdessen verwende ich eine Instanz der JCoDestination, die ich mit einer Konfigurationsdatei erstellt habe.

Was ist der Unterschied zwischen JCoClient und JCoDestination? Und warum redet niemand von JCoDestination, sondern immer von JCoClient?

Antwort

9

Der SAP Java Connector wurde komplett von 2 auf 3 Version überarbeitet. Die alte JCO.Client-Klasse wurde durch JCoDestination ersetzt, aber es ist nicht nur eine Namensänderung, die Bibliotheksarchitektur hat sich komplett geändert, so dass die Übertragung von Code von JCo 2 nach JCo 3 nicht nur eine Änderung der Klassennamen ist. Zum Beispiel zu einem SAP-Service mit Jco 2 mußte man schreiben, so etwas verbinden:

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

client.connect(); 3

während mit JCo Sie haben:

JCoDestination destination = JCoDestinationManager.getDestination(serviceName); 

Sie Informationen über die beiden Bibliotheken in this URL finden. Darüber hinaus gibt es unter this link einen detaillierten Leitfaden für die Migration von 2 nach 3. Der letztere Link kann auch über den linken Index des vorherigen Links aufgerufen werden, von dem Sie in beiden Versionen Informationen zur Client-Programmierung erhalten.

3

Die meisten "Sachen", die Sie finden werden, beziehen sich implizit auf die alte Version (2.x) des Java Connectors. Sie können immer noch diese Version von SAP greifen, und ich würde Sie dazu ermutigen, dies zu tun - nicht um es zu verwenden, sondern um das Javadoc zu vergleichen. Sie werden sehen, dass die Klassenstruktur zwischen den Versionen 2.x und 3.x radikal geändert wurde (und zum besseren, würde ich sagen). Das bedeutet jedoch, dass Sie viele der Beispiele erneut bearbeiten müssen, da sich die Klassennamen geändert haben.

+0

Sie meinen also JCoClient wurde in JCo3 in JCoDestination umbenannt? Vergleichen Sie den Javadoc? Ich würde gerne, aber das Javadoc wird nicht veröffentlicht :-( – FiveO

+0

Es ist mehr als nur eine Umbenennung - sie haben die Klassenstruktur ziemlich stark verändert. Das Javadoc ist Teil des herunterladbaren Archivs. – vwegert

+0

Du bist so verdammt richtig! Jco3 ist absolut verwirrend im Vergleich zu jco2. – gosua