readObject()引发ClassNotFoundException [关闭]

问题描述 投票:-4回答:1

Ich habe ein TCP Thread erstellt der eigentlich alle eingehenden Verbindungen bearbeitet。在对象流中使用ObjectStream进行编辑和处理。Diegelesenen Objekte werden dann von einem ObjectHandler verwaltet。Solang ich dort nur String versen ist auch alles gut。我本来就很爱我,我很爱我,我很爱我。 Woran kann das liegen?

    @Override
    public void run() {
            //Cryptography crypt = new Cryptography(); 
            System.out.println("ClientHandler Aktiv");
            try {
                ObjectOutputStream out = new ObjectOutputStream(clientSocket.getOutputStream());
                ObjectInputStream in = new ObjectInputStream(clientSocket.getInputStream());
                boolean run = true;


                while (run)  { //While-Schleife wird dann abgebroch wenn eine Excaption auslöst
                    try{

                        String str = ObjectHandler.newObject(in.readObject());

                        System.out.println("IN OK ");

                        out.writeObject(str);

                        //Sttring senden
                        out.flush(); 

                        System.out.println("OUT OK" +  str);
                    }
                    catch(Exception ex)
                    {
                        Logger.getLogger(Server.class.getName()).log(Level.SEVERE, null, ex);
                        System.out.println(ex.toString());
                        run = false;
                    }
                }
                out.close();
                in.close();
                clientSocket.close();
            } catch (IOException ex) {
                Logger.getLogger(Server.class.getName()).log(Level.SEVERE, null, ex);
                System.out.println(ex.toString());
        }
    }
public class ObjectHandler{


    /**
     * @param obj
     * @return 0 for Error, 1 for ok, 2 for ok with additionals
     * 
     */

    public static String newObject(Object obj){
        eigeneKlasse pat;
        try{
            String cmd = (String) obj;
            return CommandHandler.workCommand(cmd);
        }catch(ClassCastException ex){
            pat = (eigeneKlasse) obj;
            return tueEtwas(pat);
        }
        catch(Exception e){
            System.out.println(e.toString());
            return 0;
        }

    }
java classnotfoundexception
1个回答
-2
投票

此问题已解决,因为服务器端程序包名称与客户端程序包名称不同。

因此,找不到该包。

© www.soinside.com 2019 - 2024. All rights reserved.