UDP zwischen Java und C++ funktioniert nicht.

Status
Nicht offen für weitere Antworten.

netdiver

Neues Mitglied
Hallo Leute.

Ich hab ein kleines Problem mit Java. Ich bin C++ Programmierer und versuche gerade meine C++ Applikation über UDP mit einem kleinen Java Programm kommunizieren zu lassen.

Ich hab einen Java (UDP) Client und Server ... die kommunizieren wunderbar miteinander.
Und ich hab das gleiche in C++. Auch hier werden munter Daten zwischen den beiden ausgetauscht.

Nun der Challange schlecht hin .. die Kommunikation zwischen Java und dem jeweiligen Counterpart in C++. Ergebnis: Es geht einfach ums verrecken nicht. ( Firewall, falsche Ports und so weiter sind schon ausgeschlossen .. :wink: )

Hier noch ein paar Code Schnipsel:

C++ part: (VC++ MFC)

Ich habs mit Winsock und auch mit der WinSock2 probiert und dann mit:

Code:
 ...
 WSAStartup(..)
 socket(AF_INET, SOCK_DGRAM, 0);
 ...


Java part: ( Java 2 - 1.5.0_01 )

Code:
 ...
 socket.connect(address, DAYTIMEPORT );
 byte[] buf = new byte[DGRAM_BUF_LEN];
 DatagramPacket packet = new DatagramPacket(buf, buf.length );
 socket.send(packet);
 socket.receive(packet);
 ...

Ist mir da irgendwas entgangen ?! :bahnhof:

Grüße und vielen Dank für Antworten ..

Marco
 

byte

Top Contributor
du solltest eine middleware wie corba verwenden. oder du musst dich auf ein gemeinsames datenformat einigen, das beide sprachen verstehen (z.b. soap).
 

netdiver

Neues Mitglied
Uups .. und ich dachte UDP wäre ein Standard Protokoll ?!?! (So nach RFC und so .. )

Hast Du da zufällig noch ein paar Zusatzinfos / Ideen? - Ich würd sehr ungern noch was dazu nehmen. (C++ und Java ist schon grausam genug.)

Gruß,

Marco
 

byte

Top Contributor
udp ist ein standardprotokoll, das ist richtig. aber es handelt sich dabei nur um ein standard transport protokoll. was dabei transportiert wird, also das datenpaket, ist nicht standardisiert. wenn du jetzt z.b. einen java string per udp verschickst, woher soll dann der c++ client wissen, dass das ein string ist? die datentypen sind nicht kompatibel. daher muss man sich vorher auf einen einheitlichen datentyp einigen, also eine zwischendarstellung, die beide seiten verstehen.

dafür wurden unter anderem middlewares wie corba oder webservices entwickelt, damit heterogene systeme (also z.b. java und c++) miteinander kommunizieren können. beispiel corba: da kannst du dann mit hilfe von idl compilern (für java und c++) stubs und skeletons erzeugen, die jeweils in den einheitlichen datentyp übersetzen. dadurch kann man jeweils in seiner "welt" bleiben und braucht sich darüber keine gedanken mehr machen.

google einfach mal nach middleware, dann solltest du genug über das thema finden.

ps: warum benutzt du udp und nicht tcp?
 
G

Guest

Gast
Danke für den Hinweis. ich werd gleich mal googeln

Ist eine Vorgabe mit UDP. Macht auch durchaus Sinn, da viele Clients sporadisch Nutzdatenpakete an einen Server senden sollen. Hat den smarten Vorteil, ich brauche das ganze Verbindungsgeraffel nicht. Geht mal ein Paket verloren, ist das nicht so wild.

Ist doch aber eigentlich grausam, so viel Aufriß nur um ein Datenbuffer von gerade mal 1Kb auszutauschen.
Aber wieder was neues .. das ist ja immer das witzige .. man lernt nie aus.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Socket peer to peer Verbindung zwischen Java und Matlab Netzwerkprogrammierung 0
N Datenaustausch zwischen Java-GUI und PHP-Programm über SOAP Netzwerkprogrammierung 19
R Kommunikationsproblem zwischen JAVA-client und C-Server Netzwerkprogrammierung 5
0 Socketverbindung zwischen PHP und Java? Netzwerkprogrammierung 6
M RMI zwischen verschiedenen Java Versionen Netzwerkprogrammierung 2
M Objekte senden zwischen Java und PHP mit SOAP Netzwerkprogrammierung 9
I Performanteste Kommunikationsmethode zwischen Client u. Server Netzwerkprogrammierung 4
M Socket Netzwerk Übertragung zwischen 4 Clients Netzwerkprogrammierung 2
J VideoStreaming zwischen 2 Geräten Netzwerkprogrammierung 1
R Kommunikation zwischen Shell und Putty Netzwerkprogrammierung 5
temi (Netzwerk-) Kommunikation zwischen Anwendungen. Wie? Netzwerkprogrammierung 5
S Bluetooth Verbindung zwischen Android app und Raspberry Pi 3 Netzwerkprogrammierung 1
M Verbindung zwischen zwei Pc in dem Selben Netzwerk Netzwerkprogrammierung 8
O Client zwischen XML und JSON auswählen lassen Netzwerkprogrammierung 2
F Verbindung zwischen Server und handy Netzwerkprogrammierung 1
P MIME-TYPE Erklaerung, Kommunikation zwischen Client und Server Netzwerkprogrammierung 3
Z Verbindung zwischen 2 Rechnern über ServerSockets nicht möglich Netzwerkprogrammierung 3
D Chatprogramm zwischen zwei ChatClients (aktiv/passiv) Netzwerkprogrammierung 1
J Direkter Datenaustausch zwischen Servern Netzwerkprogrammierung 5
V Unterschied zwischen cURL und HttpURLConnection?? Netzwerkprogrammierung 2
M RMI RMI Probleme zwischen Client und Server Netzwerkprogrammierung 5
C HTTP Studienarbeit Kommunikation via HTTP mit POST zwischen Server und Client Netzwerkprogrammierung 7
V Datensätze zwischen verschiedenen Datenbanken kopieren Netzwerkprogrammierung 2
F Peer to Peer Verbindung zwischen mehreren Clients? Netzwerkprogrammierung 8
G Verbindung zwischen PC und Handy Netzwerkprogrammierung 10
K Datenaustausch zwischen Applet und JSP Netzwerkprogrammierung 4
C Verbindung zwischen 2 Computern herstellen Netzwerkprogrammierung 12
M Kommunikation zwischen ServerSocket und Socket Netzwerkprogrammierung 2
L RMI-Objekt zwischen zwei RMI-Servern kopieren Netzwerkprogrammierung 2
J Socketverbindung zwischen Javaclient und C-Server Netzwerkprogrammierung 11
B Verbindung zwischen Client und Server Netzwerkprogrammierung 2
G Chat zwischen applets: möglich? Netzwerkprogrammierung 2
S Objekte zwischen Client und Server über Sockets senden Netzwerkprogrammierung 2
D Kommunikation zwischen mehreren Servlets??? Netzwerkprogrammierung 3
P Zeit zwischen mehreren Client log-ins bestimmen. Netzwerkprogrammierung 2
D HTTP Apache-HttpClient/UNAVAILABLE (java 1.4) Netzwerkprogrammierung 18
M JAX-WS unter Java 17 plötzlich nicht mehr möglich Netzwerkprogrammierung 5
K Java RMI bricht ab wenn Remote eine Methode ausgeführt werden soll Netzwerkprogrammierung 5
M HTTP Let's Encrypt und Java Trust-Store Netzwerkprogrammierung 6
JaXnPriVate Java HTTPS Server (Secure Sockets) Netzwerkprogrammierung 15
Tobero Java serversocket nicht nur zuganglich für localhost Netzwerkprogrammierung 6
D path-Variablen in eine URL hinzufügen mit Java 1.8 Netzwerkprogrammierung 2
D WebSocket Server mit HTML Client und Java Server Netzwerkprogrammierung 5
S Von Java auf passwortgeschützten Server zugreifen + Umgang mit Ports Netzwerkprogrammierung 28
S Probleme bei Java-Installation auf Server (Linux/Shell/Terminal) Netzwerkprogrammierung 6
S Java: Anbindung an einen realen Server? (+ Portfreigabe) Netzwerkprogrammierung 8
H Socket Chat entwickeln mit Java Server Client Netzwerkprogrammierung 4
x46 Java SSLContext erstellen mit SSL-Zertifikat Netzwerkprogrammierung 1
P Jenkins Login per Java Download Manager Netzwerkprogrammierung 15
N Java socket Programmierung Filme verschicken Netzwerkprogrammierung 20
S HTTP Post?!? - Java Server Netzwerkprogrammierung 7
F Verbindung zu einem LDAP Server über Java Netzwerkprogrammierung 4
K Java Websocketserver Problem | Android to Pi Netzwerkprogrammierung 1
R Anfängerbeispiel: Suche Java-Anwendung die http-Anfragen in Tomcat liest Netzwerkprogrammierung 8
V Browsergame mit Java(WebSocketServer) als Backend? Netzwerkprogrammierung 5
platofan23 Socket Java Socket mit DynDns nicht erreichbar Netzwerkprogrammierung 6
S Fragen zu Java Webservice mit Axis2 Netzwerkprogrammierung 0
M Mit Java Mail Mails an Webmailer schicken Netzwerkprogrammierung 1
mor16Euro HTTP Php website mit Java aktualisiern Netzwerkprogrammierung 6
T HTTP JAVA Browser Konsolenanfrage(JavaScript) Netzwerkprogrammierung 7
L Socket Wie kann man in Java die Anzahl der Objekte in einem InputStream sehen ohne ihn durchgehen zu müssen Netzwerkprogrammierung 1
M Socket Verbindung Matlab(Server) Java(Client) Netzwerkprogrammierung 1
L Remote Desktop per Java steuern Netzwerkprogrammierung 4
F Server für Java Applikationen Netzwerkprogrammierung 16
J Webserver mit Java schreiben? Netzwerkprogrammierung 4
D JAVA RMI Netzwerkprogrammierung 1
K HTTP Mit Java HTML Codeauslesen um damit zu arbeiten Netzwerkprogrammierung 7
V Kann man mit Hilfe eines Java-Programms den Zugriff auf bestimmte Internetseiten verhinden? Netzwerkprogrammierung 3
J HTTP [Java 9] Neuer HTTP Client - Tutorial Netzwerkprogrammierung 3
T Mikrofonaudio über Java Server an Webbrowser streamen Netzwerkprogrammierung 13
A Bestimmter URL/Certificate per Java immer vertrauen (Trustmanager/HostnameVerifier) Netzwerkprogrammierung 1
T VPN-Verbindung über Java Netzwerkprogrammierung 4
M HTTP PATCH Request mit Java ausführen Netzwerkprogrammierung 2
Niggo_ Probleme mit Java Mail Netzwerkprogrammierung 14
Aruetiise Socket Java Programm auf Server Netzwerkprogrammierung 3
L FTP Java Interpreter unterbindet SSL Handshake Netzwerkprogrammierung 2
C IFrame mit java auslesen Netzwerkprogrammierung 1
A FTP wie kann ich von java auf datei in fpt://192.168.178.1 lesen/schreiben? Netzwerkprogrammierung 3
C Datensammlung mit Java RMI Netzwerkprogrammierung 0
K Java Jsoup : OnLoad Netzwerkprogrammierung 0
S Java Chat Server Netzwerkprogrammierung 8
Carres HTTP Vorhandenen Session-ID Cookie von Firefox, Chrome oder IE in Java verwenden Netzwerkprogrammierung 2
B Java+Grbl: G-Code Befehle mit Java an Arduino senden und lesen Netzwerkprogrammierung 1
Z HTTP HTML Element auslesen in Java Netzwerkprogrammierung 1
T Socket Java Programm hängt sich auf bei dem versuch von einem Socket scanner Daten zu erhalten. Netzwerkprogrammierung 1
Thallius HTTP HTTPS unter Java 1.6 schlägt fehl Netzwerkprogrammierung 4
Thallius Java Application über ZScaler benutzer? Netzwerkprogrammierung 0
P Chat in Java Netzwerkprogrammierung 3
C java.net.ConnectException: Operation timed out? Netzwerkprogrammierung 2
M Java Eingabe auf FTP Server übergeben Netzwerkprogrammierung 4
T curl request in java umwandeln Netzwerkprogrammierung 4
M Socket Java Server: NullPointerException Netzwerkprogrammierung 4
J Java Server empfängt php inhalt nicht Netzwerkprogrammierung 1
I Socket Kommunikation C / Java Netzwerkprogrammierung 2
H Machbarkeitsfrage: TCP/IP Client (z.B. Netty) für Java Web Applcation Netzwerkprogrammierung 1
L Java RMI Objekt konsistenz Netzwerkprogrammierung 1
H Portforwarding umgehen in Java? Netzwerkprogrammierung 5
D Response in Java Servlet erzeugen Netzwerkprogrammierung 0
X Mit Java eine Applikation auf einem anderen Windows Rechner (Windows Server 2008) starten Netzwerkprogrammierung 1
E HttpUrlConnectionExample cannot be resolved to a type / Java 8 Netzwerkprogrammierung 1

Ähnliche Java Themen


Oben