🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: ch.comp
Article #86271

JAVA: CientCounter - wer kann mir helfen?

#86271
From: Siegmund Grosse-Honebrink
Date: Thu, 17 Apr 1997 00:00
129 lines
3785 bytes

Sehr geehrte/-r Leser/-in dieser Mail

Ich habe folgendes Problem: Das Applet "ClientCounter" bringe ich
nicht zur korrekten Ausfuehrung. Im Anhang finden Sie den Quellcode
des Appletts.

Der Verfasser ist unbekannt und es gibt keine naeheren Angaben f�r
allfaellige Parameter-Uebergaben. Angepriesen wird das Applet einfach
als: "Clientcounter zaehlt die Besucher einer Webseite" 

Vieleicht ist jemand unter Ihnen, der sich mit JAVA auskennt und mir
einen hilfreichen Rat geben kann.

Es wuerde mich auch freuen, evtl. Hinweise auf andere Client-Counters
zu bekommen, aber nur wenn kein CGI-Script erforderlich ist.

Vielen Dank fuer Ihre Hilfe und

    mit freundlichen Gruessen

Siegmund Grosse-Honebrink

 --------------Hier beginnt der Quelltext---------------------------
import java.net.*;
import java.io.*;
import java.applet.*;
import java.awt.*;


public class ClientCounter extends Applet implements Runnable {
  String msg = "" ; 
  Thread fetcher = null ;
  URL    myurl ;
  Socket s = null ;
  DataInputStream input = null ;
  DataOutputStream output = null ;
  String filename = null ;


  public void init() {
    try {
      s = new Socket (getDocumentBase().getHost(), 9999 ) ;
      input = new DataInputStream(s.getInputStream());
      output = new DataOutputStream(s.getOutputStream()) ;
    } catch (IOException e) {
      e.printStackTrace() ;
      System.err.println(e.getMessage()) ;
    }
    try {
      myurl = getDocumentBase() ;
      filename = myurl.getFile() ;
      output.writeBytes(filename) ;
      output.writeByte('\n') ;
    } catch (IOException e) {
    }
    try {
      msg = "" ;
      while (true) {
        synchronized (msg) {
          msg = msg + (char) input.readByte() ;
          repaint() ;
        }
     }
    } catch (EOFException e) {
    } catch (IOException e) {
       e.printStackTrace() ;
       System.err.println(e.getMessage());
  }

    //  (fetcher = new Thread(this)).start();
  }

  public void stop() {
    try {
      if ( fetcher !=null ) {
	 fetcher.stop() ;
	 fetcher = null ;
      }
      if ( s !=null ) {
	 s.close() ;
	 s = null ;
      }
      input  = null ;
      output = null ;
    } catch (IOException e) { 
    }
  }


  public void run() { }

  public void start() {
    
   (fetcher = new Thread(this)).start();
    repaint() ;
  }


  public void paint(Graphics g) {
      Font font1, font2 ;
      FontMetrics fontMetrics1 , fontMetrics2 ;
      int i, x, y ; 
      Color mycolor ;
      
      font1 = new java.awt.Font("TimeRoman", Font.PLAIN, 14 ) ;
      font2 = new java.awt.Font("System", Font.BOLD, 24 ) ;
      fontMetrics1 = getFontMetrics(font1) ;
      fontMetrics2 = getFontMetrics(font2) ;
      mycolor = new Color(83, 255, 255 ) ;
      x = 0 ;
      y = fontMetrics2.getHeight() ;
      g.setFont( font1 ) ;
      g.drawString("You are visitor number ", x, y) ;
      x += fontMetrics1.stringWidth("You are visitor number ") ;
      g.setFont( font2 ) ; 
      g.setColor(mycolor) ;
      g.drawString(msg, x, y + 3 ) ;
      x += fontMetrics2.stringWidth(msg) + 8 ;
      g.setFont( font1 ) ;
      g.setColor(Color.black) ;
      g.drawString("since 2/22/1996", x, y ) ;
      
  }

   
}
------------------Hier hoert der Quelltext auf------------------------
Technical Details
Message-ID: <3356612a.5053402@news.bluewin.ch>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: GERMAN,ASCII
X-Google-Thread: 10c1fa,df8f30f76c15523c,start
X-Google-Attributes: gid10c1fa,public
From: sgrosse@bluewin.ch (Siegmund Grosse-Honebrink)
Subject: JAVA: CientCounter - wer kann mir helfen?
Date: 1997/04/17
Message-ID: <3356612a.5053402@news.bluewin.ch>
X-Deja-AN: 235634661
Organization: Unisource Business Networks
Newsgroups: ch.comp