Я пытаюсь создать клиент SOAP. но продолжайте получать эту ошибку. Любые идеи почему? Я попытался изменить IP-адрес, но все равно такую же ошибку.Ошибка многоадресной рассылки: многоадресный адрес не найден
MulticastSocket.Java
public void joinGroup(InetAddress mcastaddr) throws IOException {
if (isClosed()) {
throw new SocketException("Socket is closed");
}
checkAddress(mcastaddr, "joinGroup");
SecurityManager security = System.getSecurityManager();
if (security != null) {
security.checkMulticast(mcastaddr);
}
if (!mcastaddr.isMulticastAddress()) {
throw new SocketException("Not a multicast address");
}
SOAPClient.java
public class MultiThread extends Thread implements ActionListener, KeyListener {
MulticastSocket socket;
DatagramPacket packet;
public MultiThread() throws IOException {
socket = new MulticastSocket(4446);
InetAddress group = InetAddress.getByName("122.57.153.213");
socket.joinGroup(group);
}
SOAPCLient.java @ линия 80
public SoapClient() throws IOException, RemoteException, NotBoundException, NamingException {
setBackground(new Color(0, 153, 76));//three green lines on gui
JPanel rightSideLayout = new JPanel();//active clients
rightSideLayout.setBackground(Color.darkGray);
JPanel bottomPanel = new JPanel(new BorderLayout());//contains typing field and send button
JLabel label = new JLabel();
Font font = label.getFont();
Map attributes = font.getAttributes();
attributes.put(TextAttribute.UNDERLINE, TextAttribute.UNDERLINE_ON);
font = Font.getFont(attributes);
label.setFont(font);
label.setText("\tBhoo Online");
label.setForeground(Color.WHITE);
setLayout(new BorderLayout(10, 10));
sendButton = new JButton("Send");
sendButton.setPreferredSize(new Dimension(RIGHT_PANEL_WIDTH, 20));
line 80 sendButton.addActionListener(new MultiThread());
mainField = new JTextArea();
SOAPClient.java (основной)
public static void main(String[] args) throws IOException, InterruptedException, RemoteException, NotBoundException, NamingException {
JFrame frame = new JFrame("BhooChat Client");
SoapClient bhooChat = new SoapClient();
frame.add(bhooChat);
Спасибо за это, я попытался меняя его несколько раз, т.е. 224.0.0.1 и 224.0.0.100, и тогда он говорит, что не может назначить адрес? это было бы потому, что я использую Mac? @dbush – kiwilifter
@kiwilifter Возможно, интерфейс, к которому он пытается подключиться, не позволяет многоадресную рассылку. Перед вызовом 'joinGroup' сначала вызовите' setInterface' и передайте ему IP-адрес интерфейса, к которому вы хотите присоединиться. Кроме того, запустите 'ifconfig -a' в командной строке, чтобы увидеть, какие интерфейсы поддерживают многоадресную рассылку, а какие нет. – dbush