I'm trying to make a multiplayer chess game using javaFX when player1 tries to send a game request in server this exception will be appeared
Exception in thread "Thread-1" java.lang.ExceptionInInitializerError 
    at java.io.ObjectStreamClass.computeDefaultSUID(ObjectStreamClass.java:1887)
    at java.io.ObjectStreamClass.access$100(ObjectStreamClass.java:79) 
    at java.io.ObjectStreamClass$1.run(ObjectStreamClass.java:263) 
    at java.io.ObjectStreamClass$1.run(ObjectStreamClass.java:261) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.io.ObjectStreamClass.getSerialVersionUID(ObjectStreamClass.java:260) 
    at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:682) 
    at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1880) 
    at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1746) 
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2037) 
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1568) 
    at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2282) 
    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2206) 
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2064) 
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1568) 
    at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2282) 
    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2206) 
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2064) 
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1568) 
    at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2282) 
    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2206) 
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2064) 
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1568) 
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:428) 
    at ServerSide.ClientHandler.newGameRequest(ClientHandler.java:142) 
    at ServerSide.ClientHandler.run(ClientHandler.java:62) 
    at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.IllegalStateException: Toolkit not initialized
    at com.sun.javafx.application.PlatformImpl.runLater (PlatformImpl.java:273)
    at com.sun.javafx.application.PlatformImpl.runLater(PlatformImpl.java:268)
    at com.sun.javafx.application.PlatformImpl.setPlatformUserAgentStylesheet(PlatformImpl.java:550)
    at com.sun.javafx.application.PlatformImpl.setDefaultPlatformUserAgentStylesheet(PlatformImpl.java:512)
    at javafx.scene.control.Control.<clinit>(Control.java:87)
... 34 more
this is the code and exception is at  game = (Game) ois.readObject();
SimpleUser requestedUser = (SimpleUser) ois.readObject();
game = (Game) ois.readObject();
for (ClientHandler clientHandler : Server.getActiveClients()) {
    if (clientHandler.user.getSimpleUser().equals(requestedUser)) {
        pairedClientHandler = clientHandler;
        pairedClientHandler.getIncomingGameRequests().add(game);
        break;
    }
}
and this is the Game class
package ClientSide.Game;
import General.User.Audience;
import General.User.Player;
import General.User.SimpleUser;
import java.io.Serializable;;
import java.util.ArrayList;
public class Game implements Serializable {
    private Board board;
    private Player player1;
    private Player player2;
    private SimpleUser winner;
    private SimpleUser loser;
    private boolean isDraw;
    ArrayList<Audience> audiences;
    private ArrayList<Move> moves;
    private boolean isRated;
    private boolean isPlayer2Accepted;
    private int time;
    public Board getBoard() {
        return board;
    }
    public Player getPlayer1() {
        return player1;
    }
    public void setPlayer1(Player player1) {
        this.player1 = player1;
    }
    public void setPlayer2(Player player2) {
        this.player2 = player2;
    }
    public Player getPlayer2() {
        return player2;
    }
    public boolean isPlayer2Accepted() {
        return isPlayer2Accepted;
    }
    public void setPlayer2Accepted(boolean player2Accepted) {
        isPlayer2Accepted = player2Accepted;
    }
    public ArrayList<Move> getMoves() {
        return moves;
    }
    public Game() {
    }
    public Game(Player player1, Player player2, boolean isRated) {
        this.player1 = player1;
        this.player2 = player2;
        this.isRated = isRated;
    }  
    {
        board = new Board(this);
        moves = new ArrayList<>();
    }
    public SimpleUser getWinner() {
        return winner;
    }
    public void setWinner(SimpleUser winner) {
        this.winner = winner;
    }
    public SimpleUser getLoser() {
        return loser;
    }
    public void setLoser(SimpleUser loser) {
        this.loser = loser;
    }
    public boolean isDraw() {
        return isDraw;
    }
    public void setDraw(boolean draw) {
        isDraw = draw;
    } 
    public int getTime() {
        return time;
    }
    public boolean isRated() {
        return isRated;
    }
}
 
    