Python Dateien(XML) empfangen und senden

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
jerch
User
Beiträge: 1669
Registriert: Mittwoch 4. März 2009, 14:19

@Denn1s:
spyne.io sieht in der Tat vielversprechend aus und kann offensichtlich auch SOAP verbacken ;) Die lange Abhängigkeitsliste ist zunächst etwas abschreckend, je nach Protokoll/Backendfunktionalität die Ihr einsetzt, könnten diese Abhängigkeiten aber eh bestehen.

Ein paar Hinweise zum API-Design:
Deine Aufgabenliste oben sieht recht dokumenten-/ressourcenzentrisch aus. Da bietet sich an, die API an CRUD bzw. REST (HTTP) zu orientieren. Z.B. könntest eine Ressource "task" kreieren, welche die Initialisierung vornimmt, die Berechnung anstösst, evtl. einen Fortschritt ausgibt und letztendlich die Ergebnisse vorhält. Und für die nötigen Rohdaten ist die CRUD-Metapher ja direkt einleuchtend.

XML über JSON ist im Prinzip doppelt gemoppelt. Klar kannst Du XML als String in JSON verpacken und müsstest dann JSON und XML parsen. Warum dann nicht XML direkt? JSON macht anstelle von XML Sinn, falls Ihr nicht eine der wenigen cutting edges nutzt, die XML JSON voraus hat. Wahrscheinlich haben Eure Javaentwickler aber die tollen XMLSerializer schon fertig und wollen da nicht von abrücken ;)
Denn1s
User
Beiträge: 17
Registriert: Mittwoch 8. Januar 2014, 14:08

Danke für die Tipps. Wir machen es jetzt doch mit SOAP ; ) Die Java Menschen freuen sich und im Grunde ist es genauso einfach bzw. schwer. Bei Soap Frameworks für python ist allerdings die Auswahl nicht so groß. Spyne.io geht mit python 3 nicht. Ladon scheint eine gute Lösung zu sein, obwohl das Framework noch paar Bugs hat.

Viele Grüße
Dennis
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Wenn du eh schon relativ eng mit in Zusammenhang mit Java arbeiten musst, dann wäre vielleicht auch Jython einen Blick wert. Damit kannst du Java-Klassen in Python importieren und dann ganz "normal" mit Python-Syntax nutzen.
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Im Übrigen mag SOAP aus Python-Sicht durchaus fragwürdig erscheinen. In der Java-Welt ist es jedoch relativ easy, ein paar öffentliche Methoden auf entsprechende SOAP-Messages abbilden zu lassen.

Die Frage ist halt, ob man die zu realisierende Aufgabe wirklich in Form von entfernten Methodenaufrufen umsetzen möchte oder ob man lieber ein passendes Format für den Austausch entwickelt.

Letzteres wäre nämlich in einer deutlich freieren Form via JSON möglich. JSON-Bibliotheken gibt es auch in Java. Und sofern du deinen Kollegen mitteilst, welcher Datentyp vom jeweiligen Schlüssel geliefert wird (bei einer HashMap), dann sollte die Einbindung in deren Java-Architektur keine große Hürde darstellen.
Antworten