Search the FirstSpirit Knowledge Base
Hallo,
ist es möglich oder gibt es einen Weg um mit einer Access-API per ConnectionManager eine Verbindung zu zwei FirstSpirit-Servern aufzubauen, wobei der eine eine 4er Version hat und der andere eine 5er.
Viele Grüße
Bernd
Hallo Bernd,
bei einem Verbindungsaufbau von außen wird meines Wissens nach geprüft ob die Version des FS-Servers und die der verwendeten Access-API übereinstimmen.
Wahrscheinlich ist das die Ursached es von dir beschrieben Verhaltens.
Was evtl. funktionieren könnte ist, dass du per Classloading dafür sorgst, dass die beiden Verbindungen mit den jeweils passenden Access-APIs aufgebaut werden. (Ist zwar unschön, aber könnte funktionieren.)
Innerhalb deiner Aplikation müsstest du dann eben sicherstellen, dass beim Zugriff auf den FS4 Server immer die Connection verwendet wird die über die FS4-Access-API erstellt wurde und andersherum.
Grüße
Sandro
Hmm.. bin mir nicht sicher ob sich da so viel am ConnectionManager gedreht hat:
http://www.e-spirit.com/odfs41/access/
http://www.e-spirit.com/odfs51/access/
Ich würds auf einen Versuch ankommen lassen. Willst Du die Verbindung von einem Server auf den anderen haben oder eher etwas wir ein Servlet das sich mit beiden Servern verbinden kann ?
Was willst Du dann mit der Verbindung machen ? Wichtig hier ist halt, das Du nur eine API verwenden kannst und damit immer unsicher unterwegs bist.
Hi Kai,
ich möchte mich per API von einem Java-Progrämchen mit beiden Servern verbinden um Schemas zu erstellen, Daten zu kopieren, eigentlich alles Mögliche zu tun.
Man könnte ja denken solch ein Connector wäre abwärts kompatibel. Aber es will nicht recht. Weder mit der 4rer API zum 5er Server, noch andersrum.
Hallo Bernd,
bei einem Verbindungsaufbau von außen wird meines Wissens nach geprüft ob die Version des FS-Servers und die der verwendeten Access-API übereinstimmen.
Wahrscheinlich ist das die Ursached es von dir beschrieben Verhaltens.
Was evtl. funktionieren könnte ist, dass du per Classloading dafür sorgst, dass die beiden Verbindungen mit den jeweils passenden Access-APIs aufgebaut werden. (Ist zwar unschön, aber könnte funktionieren.)
Innerhalb deiner Aplikation müsstest du dann eben sicherstellen, dass beim Zugriff auf den FS4 Server immer die Connection verwendet wird die über die FS4-Access-API erstellt wurde und andersherum.
Grüße
Sandro
Hallo Sandro,
das habe ich mir schon fast gedacht.
Hat jemand soetwas schon mal gemacht?
Gruß Bernd
Hallo Bernd,
wir haben mal einen Importer/Exporter gebaut jeweils eigene Maven Projekte mit einer gemeinsamen parent.pom der Exporter für FS4 und der Importer für FS5.
Unterhalten haben sich die beiden über ein XML Zwischenformat.
Hier wäre aber auch eine direkte Kommunikation denkbar, in dem du dem einen Modul (vermutlich eher dem Exporter) erlaubst über eine Facade die Methoden des Importers zu nutzen.
Das XML Zwischenformat ist jedoch insofern hilfreich, da du damit eine lose Kopplung der beiden Systeme erreichst und du irgendwann einmal auch FS6 anbinden könntest. Darüber hinaus kann es passieren, dass Objekte aus FS4 nicht 100% zu Objekten aus FS5 kompatibel sind. Daher macht es Sinn diese mit dem FS5 Importer und der FS5 API aus dem XML neu zu erzeugen.
In unserem Fall haben wir über XML Transformationen auch noch so Dinge wie Sprachmultiplikation und komplexere Umbauten der Contentstruktur durchgeführt, da sich das Template-Set vollständig verändert hatte.
Viele Grüße,
Philipp
Hi Philipp,
danke für deine Ausführung, die ist sehr hilfreich.
An so etwas ähnliches habe ich auch schon gedacht.
Gruß Bernd