"We are back" « oc.at

Java WebServices und C#

tinker 03.10.2008 - 11:07 968 4
Posts

tinker

SQUEAK
Avatar
Registered: Nov 2005
Location: NÖ
Posts: 5249
Moin moin.

Ich arbeite gerade an einem WebService-Projekt an dem Java (Server) und C# (Client) beteiligt sind.

Die Kommunikation mittels wsdl mit einfachen Datentypen funktioniert soweit ohne Probleme. Im nächsten Schritt braucht der Client ein Dictionary, was in Java einer HashMap gleichkommt.

Jetzt gibts folgende Probleme (ich arbeite am Server):
Wie verschick ich am besten eine HashMap? Mit einer Funktion im Service die eine HashMap zurück liefert, funktioniert es nicht, da bekomm ich nur einen leeren Tag. Hab mich im Inet etwas umgesehen und bin dabei auf den Tipp gestoßen die HashMap in eine Bean zu packen. Das hab ich nun auch gemacht, also eine einfache Bean mit der HashTable, getter und setter. Funktioniert gut. Nur gibts ne andere, schönere Lösung?

Weiters wird die HashMap in einen ComplexType gemappt, und der C#-Typ meint nun, das er das dann nicht einfach in ein Dictionary casten kann. Desshalb: Gibts vieleicht irgendwen der mit dem Zusammenspiel von Java und C# üebr WS Erfahrungen hat und mir dazu nen Tipp geben kann!?

Umgebung: MyEclipse 6.0, Java 6, CXF

Falls mehr Informationen benötigt werden, bitte sagen. Ansonsten hoff ich das es hier vielleicht jemanden gibt der mir was dazu sagen kann.

tia

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12128
Ich habe mit Java nur wenig und mit C# genau 0 Erfahrung, aber wenn du allgemein eine portable Loesung zum maschinenuebergreifenden Uebertragen (bzw. (De)Serialisieren) primitiver Datenstrukturen und/oder -typen suchst, dann bietet die durch AJAX bekanntgewordene JSON dafuer eine elegante Alternative, die auch von vielen populaeren Sprachen sehr gut durch Libraries unterstuetzt wird. Eine weitere, eher performanceorientierte Loesung zum Loesen solcher Probleme sind Google Protocol Buffers, wobei ich da Zweifel habe, dass die von dir genutzten Sprachen gut (oder ueberhaupt) unterstuetzt werden.


Vielleicht ein bisschen OT das alles, aber: hth. :)

tinker

SQUEAK
Avatar
Registered: Nov 2005
Location: NÖ
Posts: 5249
Es gibt Technologie-Vorgaben, desshalb sind Java, C# und WebServices zu verwenden. Aber trotzdem danke!

semteX

begehrt die rostschaufel
Avatar
Registered: Oct 2002
Location: Pre
Posts: 14695
maps und dictionaries solltest generell ned übers webinterface drübernudeln, sind keine standarddatentypen. wandels in a array um oder mach sonst was

tinker

SQUEAK
Avatar
Registered: Nov 2005
Location: NÖ
Posts: 5249
So, ich brauch mal wieder Hilfe.

Und zwar: Kennt sich jemand mit dem Aegis-Binding aus und weiß wie man minOccurs und nillable global für alle Parameter setzen kann?

Hier wird drauf eingegangen wie mans im Java-Code macht, ich würd aber gerne wissen wie ichs im xml-File konfigurieren kann.

tia
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz