У меня проблема, когда мой сервер подключен к клиенту, это исключение происходит, тогда моя программа не отвечает после подключения. Я использую конструктор gui netbeans для сгенерированного кода для класса gui. Я также прокомментирую номер строки, который показан ниже в моем коде для вас, ребята, рассматривающие. Все работы находят, прежде чем сокет примет. Пожалуйста помоги!Java Gui Thread Coding?
Исключение в потоке "Thread-0" java.lang.NullPointerException в serverui.ServerUi.StartServer (ServerUi.java:62) в serverui.ServerThread.run (ServerUi.java:19) в Явы .lang.Thread.run (Thread.java:745)
class ServerThread implements Runnable{
public void run(){
try {
ServerUi t = new ServerUi();
t.StartServer(); //Line 19
} catch (IOException ex) {
//Logger.getLogger(ServerThread.class.getName()).log(Level.SEVERE, null, ex);
} catch (InterruptedException ex) {
//Logger.getLogger(ServerThread.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
public class ServerUi {
byte s = 0;
static ServerSocket serverSocket = null;
Socket clientSocket = null;
PrintWriter out = null;
BufferedReader in = null;
public static boolean checklisten = false;
static gui winframe = null;
public static void main(String[] args)throws IOException {
winframe = new gui();
serverSocket = new ServerSocket(10007);
Thread tserver = new Thread(new ServerThread());
tserver.start();
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
winframe.setVisible(true);
}
});
}
public void StartServer()throws IOException, InterruptedException
{
winframe.displayMessage("Listening for Connection");
clientSocket = serverSocket.accept();
winframe.displayMessage("Connected");
String inputLine;
while(true){
while((inputLine=in.readLine()) != null) // Line 62
{
winframe.displayMessage("Server: "+ inputLine);
out.println(inputLine);
if(inputLine.equals("Bye."))
{
this.Closeconnection();
break;
}
if(winframe.checkdisconnectbtn == true)
{
this.Closeconnection();
break;
}
}
}
}
Удалены «[Решено: Просто не хватает и аудиовыход инициализации]». Из названия путем отбрасывания правку. Вместо этого вы должны принять ответ, который помог вам, или опубликовать собственное решение. –