*在这个程序中,我试图让我的电脑既是服务器又是客户端。 *我得到的错误是“连接被拒绝”
这是我的计划:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.net.*;
import java.io.*;
class chatboxClient {
JFrame fr;
JPanel p;
JButton send;
JTextArea ta;
JRadioButton rb;
chatboxClient() {
new chatboxServer();
fr=new JFrame("ChatBox_CLIENT");
p=new JPanel();
send=new JButton("send");
ta=new JTextArea();
ta.setRows(20);
ta.setColumns(20);
rb=new JRadioButton("Connect"); // action listener for connect
rb.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
connectActionPerformed(ae);
}
});
fr.add(p);
p.add(ta);
p.add(rb);
p.add(send);
fr.setSize(500,500);
fr.setResizable(false);
fr.setVisible(true);
}
public void connectActionPerformed(ActionEvent ae) {
try {
InetAddress address=InetAddress.getLocalHost();
Socket s=new Socket(address,3000); // create connection with port number 3000 of server
if(s.isConnected()==true) {
JOptionPane.showMessageDialog(new JFrame(),"Connection successfully Established");
} else {
JOptionPane.showMessageDialog(new JFrame(),"Error Creating Connection");
}
} catch(Exception exc) {
JOptionPane.showMessageDialog(new JFrame(),exc); // line A
}
}
public static void main(String args[]) {
new chatboxClient();
}
}
服务器端:
import java.awt.*;
import java.net.*;
import javax.swing.*;
import java.awt.event.*;
class chatboxServer {
JFrame fr;
JPanel p;
JTextArea ta;
JButton send;
chatboxServer() {
fr=new JFrame("ChatBox_SERVER");
p=new JPanel();
ta=new JTextArea();
ta.setRows(20);
ta.setColumns(20);
send=new JButton("send");
fr.add(p);
p.add(ta);
p.add(send);
fr.setVisible(true);
fr.setSize(500,500);
fr.setResizable(false);
}
public static void main(String args[]) {
new chatboxServer();
}
}
这里我得到的异常(当我按连接时)对应于我唯一的try语句。 (标记A) 我出现异常的原因是什么? 注意:chatboxServer()是在同一目录中定义的类。
通过这个程序,我希望在一个窗口中键入的消息转到另一个窗口。我已将我的电脑设为服务器和客户端。
答案 0 :(得分:0)
如果你不相信我们,当我们说Connection Refused意味着没有服务器在该端口上侦听时,你可以直接谷歌。 http://www.google.co.uk/search?q=Connection+Refused 3,620,000次点击
答案 1 :(得分:0)
您的代码中没有服务器。我能看到的唯一代码是服务器的GUI。不是实际的服务器。