on 03-16-2023 8:30 PM
Hallo,
ich hoffe, ihr könnt mir/uns helfen.
Vorweg: Ich habe mich durchs Web gewühlt, die Beispiele und javadocs gelesen, bin aber leider immer noch ratlos.
Ausgangssituation: aufgrund vieler Mandanten mit unterschiedlichen Verbindungs-Properties können die Properties für eine Verbindung erst zur Laufzeit ermittelt und gesetzt werden. Dies klappt auch super, solange nur der Mandant auf dem Server anfragt, der zuerst nach Serverstart seine properties gesetzt hat. Jeder weitere Mandant fällt auf die Nase, weil die vorhandenen properties natürlich nicht passen.
Frage: Wie kann ich zur Laufzeit eine weitere Destination hinzufügen? Ich finde keinen Weg, mir "meinen" CustomDestinationDataProvider zu holen, um diesem neue Properties zu spendieren und leider auch keinen anderen Weg, ans Ziel zu kommen.
Habt ihr einen Rat für mich/uns?
Vielen Dank und viele Grüße
Es kann immer nur einen DestinationDataProvider geben. Und der muss zentral alle möglichen Destinationsnamen nebst zugehörigen Properties speichern und zurückliefern. Die Implementierung und Registrierung des DestinationDataProvider ist Aufgabe der Server-Infrastruktur, nicht der Business-Applikation und schon gar nicht von Kunden oder Mandanten.
Das im SDK mitgelieferte Beispielprogramm CustomDestinationDataProvider.java zeigt eine einfache Implementierung.
Der Destinationsname ist der Schlüssel zu den Logon-Properties. Die Speicherung erfolgt in einer HashMap<String, Properties>. Natürlich muss jeder "Mandant" einen anderen ("seinen") Destinationsnamen verwenden. Und das ist auch schon alles.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hallo Herr Gass,
herzlichen Dank für die schnelle Rückmeldung und Aufklärung.
Viele Grüße und ein schönes Wochenende
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Gern geschehen. Ich musste etwas raten, was das eigentliche Problem ist. Aber wenn ich helfen konnte, habe ich wohl richtig geraten. 🙂
Falls Sie versierter ABAP-Entwickler sind, kann man sich als Verständnishilfe vorstellen, dass die Implementierung des DestinationDataProvider einfach der SAP-System-Transaktion SM59 entspricht, und die Verbindungsdaten zu beliebigen Destinationen liefert.
Ich empfehle auch, aufmerksam die Package-Description des Paketes com.sap.conn.jco.ext in der JavaDoc zu lesen, und die JavaDoc des Interfaces com.sap.conn.jco.ext.DestinationDataProvider natürlich ebenso.
User | Count |
---|---|
81 | |
9 | |
9 | |
7 | |
7 | |
7 | |
6 | |
5 | |
5 | |
5 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.