基本上,我正在编写一个简单的TCP-UDP多客户GUI程序。我可以建立与服务器的TCP
连接,但不能建立UDP
连接。服务器正在侦听端口4000.
我在GUI客户端上有comboBox
,其中包含元素TCP
和UDP.
如果用户选择UDP
并单击{ {1}}然后,它会尝试通过调用Connect.
方法建立UDP
连接。
以下是我的客户端GUI代码:
UDPconnection
以下是我的聊天服务器代码:
public void UDPconnection()
{
try
{
done = false;
datagramSocket = new DatagramSocket(serverPort);
}
catch (SocketException e)
{
done = true;
System.out.println("Host not available");
}
}
答案 0 :(得分:0)
首先没有“UDP连接”这样的东西。
无法在指定端口上创建DatagramSocket
不表示“主机不可用”。查看异常消息,了解它的含义。
UDP不与TCP互操作,特别是与Java ServerSockets
不兼容。您需要两端都有DatagramSocket
或DatagramChannel
,并且没有连接阶段:您只需来回发送数据报。