carookee - group communication for you
Home / JavaForum / Networking
Infos   |   Features   |   Gold-Edition   |   Kundenservice   
java
  Übersicht
  Forum
Beginner
Java allgemein
JDBC
JNI
Networking
Online-Ressourcen
Swing + AWT
XML
Meckerecke
  Mitglieder
LOGIN





· Passwort vergessen
· Kostenlos anmelden
  Information
  Demo
  Features
  Im Vergleich
  Anmeldung
SUCHE
Beiträge, Foren oder Verfasser finden:
  Kundenservice
  Impressum
  Datenschutz
  AGB
Status
5.324 User online
0 User eingeloggt
 

Beiträge
   Antworten     Neuer Beitrag    

Beitrag 490 von 610 (80%) |<   <   >   >|

Autor Patrick Hypscher
Datum 02.01.02, 13:41
Betreff Gelöst - aber ANDERES PROBLEM


Hi,

das Problem ist gelöst. Man muss halt Tomcat neu starten, damit die aktualisierten Dateien verwenden werden ;-)

Nun ein neues Problem. Ich sende nun mit dem Applet Daten an das Servlet und im Applet läuft ein Thread, der überprüft, ob Daten empfangen werden. Leider ist das nicht der Fall. Das Servlet wirft eine InterupptedIOException. Nur weiss ich nicht warum :-(
Hier mal der Code der doGet-Methode aus dem Servlet. Nicht einmal die erste Zeile wird ausgegeben. Nach ca 40 Sekunden kommt die Fehlermeldung.
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    System.out.println( this.getServletContext().getRealPath("uri"));
    response.setContentType("application/x-java-serialized-object");
    String st = "";
    System.out.println(1);
    try {
        ObjectInputStream stream = new ObjectInputStream(request.getInputStream());
        SendObject so = (SendObject)stream.readObject();
        stream.close();
        Integer Right;
        System.out.println(2);
        if(so.getType()==pennenews.SendObject.LOGIN) {
            int auth = acces((String)so.getItem(0),(String)so.getItem(1));
            Vector Content = new Vector();
            pennenews.SendObject back = new pennenews.SendObject(pennenews.SendObject.LOGIN);
            back.addItem((String)so.getItem(0));
            back.addItem(new Integer(auth));
            System.out.println(3);
            if(auth > -1) {
                Right = new Integer(1);
                Vector[] main = new Vector[folders.length];
                Vector[] kind = new Vector[folders.length];
                for(int i=0; i<folders.length; i++) {
                    main[i] = InputOutput.getInfos(InputOutput.TXT_PATH + folders[i].substring(0,4) + "/main.txt");
                    kind[i] = InputOutput.getArticlesOfFolder(folders[i].substring(0,4));
                }
                Content.add(InputOutput.getInfos(InputOutput.TXT_PATH + "main.txt"));
                Content.add(main);
                Content.add(kind);
                Content.add(InputOutput.getDates());
                Content.add(InputOutput.getArchive());
                
            }
            System.out.println(4);
            back.addItem(Content);
            ObjectOutputStream Ostream = new ObjectOutputStream(response.getOutputStream());
            Ostream.writeObject(back);
            Ostream.close();
        }
        else if(so.getType()==SendObject.RELOAD) {
            Vector[] main = new Vector[folders.length];
            Vector[] kind = new Vector[folders.length];
            for(int i=0; i<folders.length; i++) {
                main[i] = InputOutput.getInfos(InputOutput.TXT_PATH + folders[i].substring(0,4) + "/main.txt");
                kind[i] = InputOutput.getArticlesOfFolder(folders[i].substring(0,4));
            }
            Vector Content = new Vector();
            Content.add(InputOutput.getInfos(InputOutput.TXT_PATH + "main.txt"));
            Content.add(main);
            Content.add(kind);
            Content.add(InputOutput.getDates());
            Content.add(InputOutput.getArchive());
            
            pennenews.SendObject back = new pennenews.SendObject(pennenews.SendObject.RELOAD);
            back.addItem("");
            back.addItem("0");
            back.addItem(Content);
            ObjectOutputStream Ostream = new ObjectOutputStream(response.getOutputStream());
            Ostream.writeObject(back);
            Ostream.close();
        }
        if(so.getType()==pennenews.SendObject.SAVE) {
            Vector help = new Vector(so.getSize()-3);
            help.add(so.getItem(3));
            help.add(so.getItem(4));
            help.add(so.getItem(5));
            help.add(so.getItem(6));
            help.add(so.getItem(7));
            String[] names = (String[])so.getItem(2);
            InputOutput.saveChanges(help,names);
        }
    }
    catch (IOException e) {
        st += e;
        System.out.println("IOException-Fehler: " + e); // Hier kommt immer die Fehlermeldung
    }
    catch (ClassNotFoundException e) {
        st += e;
        System.out.println("ClassNotFoundException-Fehler: " + e);
    }
    try {
        BufferedWriter writer = new BufferedWriter(new FileWriter("ja.txt"));
        writer.write("ja");
        writer.write(st);
        writer.close();
    }
    catch(IOException e) {
        System.out.println("Fehler beim Erstellen des Log :" + e);
    }
}

Auch die Datei "ja.txt" wird nicht erstellt, obwohl sie doch außerhalb des try-catch-Blockes ist.
Die Konsolenausgaben zwischendurch sind einfach nur dafür gedacht, dass cih sehe, bis vohin das Servlet kommt. Nur sehe ich - wie gesagt - nix, sondern nur die Fehlermeldung.
Woran liegt das?

Patrick

BTW: Das Servlet läuft auf einem Tomcat 4.0.1 Server im Netzwerk unter Win95.


Diskussionsverlauf:
Verbindung von Applet zu Servlet funktioniert nicht
    Gelöst - aber ANDERES PROBLEM
        Re: Gelöst - aber ANDERES PROBLEM
            Hat sich erledigt

 Auf diesen Beitrag antworten
 Neuen Beitrag verfassen


|<   <   >   >|

                                                                                                                                                                                                                           

Impressum  · Datenschutz  · AGB  · Infos  · Presse
Ein modernes Forum: teamturn.com