Archivlink: javarea.de Forum > JavaScript > Java-Applet welches Socket acceptirt ?
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > Java-Applet welches Socket acceptirt ?

Pages: [1]

geschrieben von MrSpoocy am 16.04.2005 - 23:10
Hi,

Also ich versuche grade ein Applet zu schreiben das auf daten über ein Socket wartet und diese dann Ausgibt. Also eine Art chat. Aber mit dem unterschied das die daten von überall kommen können und in jeder sprache. Also sowol ein php code soll über socket informationen an das appet schicken können als auch ein C++ script. Sowas ist sicher möglich aber wie :/ ?

mfg Spoocy

geschrieben von Patrick am 18.04.2005 - 10:27
Servus....

ich habe gesehen, dass du es versuchst :-))

Poste doch mal, was du bisher geschafft hast. Dann können wir dir schritt für schritt weiterhelfen.

mfG,
Patrick

geschrieben von MrSpoocy am 18.04.2005 - 15:33
Also in der DOS console mit java file.class aufgeruffen geht es zum teil.
Es startet das Applet und wartet auf daten. Ich sende ein socker per php/c++ programm. Das Java bekommt die daten und gibt sie aus.

Zum einen geht folgendes noch nicht. Nach empfang der daten beendet das applet sich.
Zum anderem geht das script nur in der dos console. Rufe ich es per IE auf geht es nicht.

PHP-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32: 
33: 
34: 
35: 
36: 
37: 
38: 
39: 
40: 
41: 
42: 
43: 
44: 
45: 
46: 
47: 
48: 
49: 
50: 
51: 

<?
import java
.applet.*;
import java.awt.*;
import java.io.*;
import java.net.*;

public class 
Client extends Applet
{
    public 
void init()
    {
    
setBackground (Color.black);
    
setBackground (Color.red);
    }
    public static 
void main(String args[])
    {
        
ServerSocket echoServer null;
        
String line;
        
DataInputStream is;
        
PrintStream os;
        
Socket clientSocket null;

        try
        {
        
echoServer = new ServerSocket(9999);
        }

        catch (
IOException e)
        {
        
System.out.println("Inizalesierung des empfangs Strom fehlerhaft: "e);
        }

        try
        {
        
clientSocket echoServer.accept();
        
is = new DataInputStream(clientSocket.getInputStream());
        
os = new PrintStream(clientSocket.getOutputStream());

            
String responseLine;
            while ((
responseLine is.readLine()) != null)
            {
            
System.out.println("Server: " responseLine);
            }
        }

        catch (
IOException e)
        {
        
System.out.println(e);
        }
    }
}
?>


geschrieben von Patrick am 18.04.2005 - 17:40
Servus,

mir ist aufgefallen, dass die Klasse, bzw. das Applet nicht Client heissen darf, sonst gibts einen Fehler.... Nenne die Probeweise mal in Test um.

mfG,
Patrick




geschrieben von MrSpoocy am 18.04.2005 - 23:53
Ok .. nun startet das Appelt zumindest ohne fehlermeldung. Aber dennoch gehts nicht wie in der console. Ich glaub nin Applet im IE darf kein Socket an igrend einem Port offen halten oder so :/

geschrieben von Patrick am 19.04.2005 - 12:18
Wenn dem so wäre, läuft es im Mozilla?

geschrieben von MrSpoocy am 19.04.2005 - 19:02
Auch im Firefox gehts nicht. Wie kann ich denn text an beliebiger stelle ausgeben um zu schaun wie weit der browser das script durcharbeitet. drawString geht ja nicht überall :/


Kann man dich vieleicht per ICQ erreichen um sich mit genauerem da drüber mit dir zu unterhalten ?

mfg Spoocy

geschrieben von MrSpoocy am 21.04.2005 - 10:55
Also ich hab jetzt zich tausende post gelesen. Alles geht wenn ich es per java console starte und so langsam galube ich zu wissen warum. So weit ich das mitbekommen habe müssen die class in ein jar file gepackt werden und dieses muß dann signiert werden. Denn durch die signierung wird der user gefragt ob er dem java script die nötigen rechte gibt. Bestätigt er mit ja so darf das applet SocketServer ausfürhen und einen server local beim clienten aufbauen. Was ich aber noch nicht gefunden habe ist wie man so ein file signiert

geschrieben von MrSpoocy am 25.04.2005 - 00:22
So.. endlich ... alles geschaft ^^

Also es functioniert. Kleines problem is halt nur das Wenn man den IE minimiert oder durch ein anderes fenster in hintergrund bringt, und dann wieder in vordergrund, so versucht das script einen neuen Server zu starten :/ Wie kann man verhindern das das script immer weiterläuft solange der IE offen ist ?


Powered by: JBB v.2.0.4 Copyright ©2000-2006, www.javarea.de.