[英]rmi chat room not able to send data to server
I am developing a rmi chat room with some GUI. 我正在开发带有GUI的rmi聊天室。 I have to take input from client n send it to server.But I am not able to use the value read from Jtextfield. 我必须从客户端n接收输入,然后将其发送到服务器。但是我无法使用从Jtextfield读取的值。 Can anyone pls help me how to use the read input from user to send to server 任何人都可以帮助我如何使用用户的读取输入发送到服务器
import java.applet.Applet;
import java.awt.*
import java.rmi.Naming;
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
import javax.swing.*;
public class MyChatClient extends UnicastRemoteObject{
JFrame F = new JFrame("Chat room");
JTextField T = new JTextField(25);
JPanel pane = new JPanel(new GridBagLayout());
JButton B = new JButton("submit");
JPanel pane2 = new JPanel(new GridBagLayout());
TextArea TA = new TextArea(15,50);
String response;
protected MyChatClient() throws RemoteException {
F.setSize(400,400);
pane.add(T);
pane.add(B);
F.add(pane, BorderLayout.SOUTH);
TA.setEditable(false);
TA.setBackground(Color.WHITE);
pane2.add(TA);
F.add(pane2, BorderLayout.BEFORE_FIRST_LINE);
F.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
F.setVisible(true);
B.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
response = T.getText(); // I am not able to send this to server
}});
}
public static void main(String[] args) throws RemoteException {
MyChatClient mc = new MyChatClient();
try{
//System.setSecurityManager(new RMISecurityManager());
//Registry reg = LocateRegistry.getRegistry("localhost");
ServerImpl svr = (ServerImpl)Naming.lookup("rmi://localhost/ChatServer") ;
System.out.println("Server found");
svr.sendMessage(response); // here is the problem
}catch(Exception e){
System.err.print(e);
}
}
}
I think your action listener is never called. 我认为您的动作监听器永远不会被调用。 Try checking this, 请检查这一点,
B.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
response = T.getText();
System.out.println("inside action");
}});
Or add a button and perform this operation inside its click event. 或添加一个按钮并在其click事件中执行此操作。 good luck !! 祝好运 !!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.