Zum Inhalt springen

kingofbrain

Mitglieder
  • Gesamte Inhalte

    2093
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von kingofbrain

  1. Naja, ich denke, bei der Anzeige, wo ein Tierarzt sich befindet, sollte die Information genauer sein als nur basierend auf der Postleitzahl. Wo wird bei einer Postleitzahl der Marker gesetzt? Im Mittelpunkt des Gebiets, für das die Postleitzahl gilt? Am einfachsten sollte das mit der Google Maps API zu lösen sein. Die liefern Dir anhand der Adresssinformationen die gewünschten Längen- und Breiteninformationen. Peter
  2. kingofbrain

    ClassNotFound exception

    Um den Post von Schiller (hoffentlich) noch klärend zu ergänzen: Deine Anwendung mault nicht wegen irgendeiner Deiner Klassen, sondern wegen einer fehlenden apache-commons Klasse. Die Bibliothek, die Du verwendest, benötigt also zur Laufzeit apache-commons. Deshalb kannst Du auch ohne Probleme kompilieren, weil die Abhängigkeit von der Bibliothek ja bei deren Kompilierung aufgelöst wurde. Schau mal nach, was die von Dir verwendete Bibliothek noch alles an Abhängigkeiten hat, da könnte noch mehr sein. Peter
  3. kingofbrain

    ClassNotFound exception

    Wo liegt denn Deine geschriebene Klasse? In einem Ordner, der von Eclipse als Source-Folder mit in den Classpath einbezogen wird? Poste doch mal den exakten Stacktrace Deines Fehlers. Hast Du perdians Tipp schon befolgt und mal reindebugged? Peter
  4. kingofbrain

    ClassNotFound exception

    Du musst zwischen Entwicklungs- und Laufzeitumgebung unterscheiden. Es kann schon sein, dass die Klasse zum Entwicklungszeitpunkt gefunden wird, weil Du sie z.B. in Eclipse in den Build Path mit aufgenommen hast. Wenn Du dann aber zur Laufzeit die Klasse nicht im Klassenpfad hast, dann erhältst Du eben die von Dir genannte Exception. In welcher Umgebung tritt das Problem denn auf? Application Server? Standalone Anwendung? Und wie fügst Du die benötigte Klasse / das JAR dort zum Classpath hinzu? Peter
  5. Also beim JFrame (ich denke, Du verwendest Swing) kannst Du Dir das Graphics Objekt über die Methode getGraphics ermitteln und darauf mit der Methode drawImage() zeichnen. Allerdings muss man sich hier evtl. noch darum kümmern, wann und wie repainted werden muss oder wie es bei einer Überlagerung durch auf dem Frame angeordnete Komponenten ist. Peter
  6. Auch ein Informatiker mit Forumsaktivitäten braucht mal Urlaub. Vielleicht sollte mal einer für Foren einen Thread-Autoresponder programmieren. Naja, in Deiner Grafik kennt das Observable seine Observer. Das ist auch gut so, weil nur so können die benachrichtig werden. Die Verbindung zwischen der Aktie und dem Broker geht allerdings umgekehrt, hier weiß ein Broker über seine Aktien Bescheid. Das ist semantisch eine ganz eigene Beziehung. Allerdings wird es in der Regel schon so sein, dass auch ein Observer seine Observables kennt (er muss sich ja schließlich als Listener anmelden, wenn das nicht von dritter Stelle gemacht wird), deshalb könnte man durchaus aus der zwischen Observer und Observable gezogenen unidirektionalen Beziehung eine Bidirektionale machen, damit sich beide gegenseitig kennen. Hier wieder der Tipp. Übersetze diese abstrakten Beziehungen / Relationen in natürlichsprachliche "wer kennt wen und warum" Beziehungen, dann wird das sprechender. Peter
  7. Du willst ja gerade nicht, dass ein konkreter Observer ein konkretes Observable kennen muss. Diese Verbindung regelst Du in den Interfaces / Superklassen, dann hat jede Kind- oder implementierende Klasse sie automatisch. Und es ist dann egal, ob es ein Observable A oder ein Observable B ist, was in Verbindung zu einem Observer C steht. Design Pattern wollen nicht einen Spezialfall regeln (z.B. Aktienbroker interessiert sich für Aktienkurse), sondern so allgemein sein wie möglich (irgendjemand kann sich als Beobachter für ein beobachtbares Objekt anmelden, ob das jetzt ein Vogel ist, den der Vogelkundler beobachtet, oder ein Aktienkurs durch einen Broker, soll in einem allgemeinen Pattern egal. sein). Peter
  8. So, ich habe das jetzt selbst mal ausprobiert. Bei mir funktioniert es. Allerdings fühle ich mich jetzt nach der Codierung von Skriptcode in der JSP ziemlich schmutzig und möchte gerne duschen. Wie deployst Du denn Deine Anwendung? Hast Du ein WAR und steckt in diesem WAR auch Deine kompilierte Klasse "Testing" im korrekten Package? Der Aufbau sollte so sein: WAR start.jsp WEB-INF classes Klassen Testing.class Und das es keine start.class gibt ist klar, weil er ja beim Compile rumzickt. Die von dir gepostete Klasse sieht übrigens nicht nach der aus, die er anmeckert, weil dort die Zeile 6 leer ist. Laut Stacktrace soll hier aber der Fehler stecken. Peter
  9. Hmm, so ganz schlüssig ist mir Deine Beschreibung nicht. Mozilla gibt Dir diesen Fehler zwar zurück, aber auftreten tut er in Deinem Servlet Container. Welchen verwendest Du denn hier (der Stacktrace sieht nach Tomcat aus)? Kann es sein, dass Du neben der Klasse "Testing" auch ein Package "Testing" hast? Ist zwar sehr unwahrscheinlich, aber so hört es sich für mich in der Fehlermeldung an. Du sagst, in Eclipse klappt es? Wie meinst Du das? Du startest die Servlet Engine aus Eclipse heraus und öffnest die Seite über den integrierten Browser? Zeig doch mal bitte die komplette JSP und die komplette Java-Datei, die der Tomcat erzeugt (liegt im work-Verzeichnis, musst ein bisschen suchen). Peter
  10. Also Script-Blöcke in einer JSP solltest Du auf jeden Fall vermeiden. Verwende hier besser im einfachsten Fall ein vorgeschaltetes Servlet und verweise aus diesem heraus auf Deine JSP. Das Servlet macht die Logik, die JSP zeigt die Ergebnisse an (Model2 Architektur). An Deinem Beispiel kann ich auf den ersten Blick nichts falsches erkennen. Was ist denn der Fehler? Wenn Du erwartest, dass Deine Klasse etwas in das Ergebnis schreibt, musst Du sie ändern, denn sie loggt nur in den Standardausgabestrom. Peter
  11. kingofbrain

    JTable sortieren

    Guten Morgen, wahrscheinlich wird der RowSorter, der durch Deine verwendete Methode benutzt wird, nur den String vergleichen und nicht das dahinter liegende Datum. Weise Deiner JTable doch einen eigenen RowSorter zu (JTable#setRowSorter()). Schau Dir mal die API Doc zur Klasse TableRowSorter an, dort wird beschrieben, wie mit Comparator-Objekten gearbeitet werden kann, um Spalten einer Tabelle zu sortieren. Peter
  12. Was Du willst, geht mit Properties nicht. Bei Properties gibt es nur einen Wert pro Schlüssel, das hast Du ja bereits gemerkt. Bevor Du jetzt mit irgendwelchen komplizierten XML-Lösungen anfängst: Lies die Datei selbst zeilenweise ein und werte sie aus. Für jede Zeile trennst Du Schlüssel und Wert (String#split()), schaust nach, ob Du für den Schlüssel schon einen Eintrag hast, und wenn nicht, legst Du einen neuen an. Wenn Du schon einen entsprechenden Wert hast, dann merk Dir diesen auch noch. Peter
  13. Tja, was hast Du denn bisher? Mit der Klasse Properties kannst Du ja die Daten aus einer Datei einlesen (Methode load()), mit keys() oder keySet() oder elements() holst Du dir alle Schlüssel (= Property-Namen), und mit diesen kannst Du dann über getProperty() oder get() die Werte ermitteln. Wenn Dir die Schlüssel egal sind, kannst Du auch gleich mit values() arbeiten (oder mit entrySet, dann erhältst Du komplette Map.Entry Objekte). Du hast also alle Möglichkeiten der Welt und wir müssen jetzt nur noch wissen, was Du genau machst und welchen Fehler Du erhältst, damit wir Dir helfen können. Peter
  14. Nö, Feinde machst Du Dir hier nicht, denke ich. Programmiersprachen sind keine Religion, sondern ein Werkzeug. In einem Gummihammerforum wird wahrscheinlich auch keiner Dich nicht mehr mögen, wenn Du mit einer Zimmermannshammerfrage kommst, weil die beiden ein ähnliches Bedienungsmuster haben. Peter
  15. Ich habe jetzt kein zehn Jahre altes Java hier und weiß nicht, ob Guido Krüger früher recht hatte. In der aktuellen Ausgabe des Javabuchs ist die gleiche Stelle allerdings korrekt. Es macht also schon einen Unterschied, eine hoffnungslos veraltete Version eines Buchs zu lesen. Mein Tipp: lade Dir die aktuelle Version runter und arbeite mit der. Peter
  16. Ich denke, das passt. Je nachdem, wie das Verhältnis zum direkten Vorgesetzten ist, würde ich ihm vor Aushändigung des Schreibens persönlich erläutern, dass und warum ich gehe. Peter
  17. Das ist jetzt eine Vermutung (spannende Frage übrigens), aber ich denke, es wird schief gehen. Beim Deserialisieren wird der Bytestrom des serialisierten Objekts gelesen und interpretiert. Interpretieren heißt in diesem Fall, der Classloader lädt die Klasse. Da er zur Klasse aber leider keine entsprechende Bytecodedatei hat, kann er sie in meinen Augen nicht laden. Unter J2EE ist es möglich (JBoss, ich weiß nicht, ob das in der Spezifikation geregelt ist), dass ein Client die Klassen, die er gerade aus dem Application Server laden und verwenden will, nicht schon beim Start der VM zur Verfügung haben muss, sondern diese bei Bedarf nachzieht. Hier kann ich es mir so vorstellen, dass das geht, wenn ein eigener Classloader verwendet wird. Probier doch den von Dir gewünschten Fall einfach mal aus und sag Bescheid, ob das geht, es würde mich interessieren. Peter
  18. Häh? Was für eine Schleife? BufferedWriter out = new BufferedWriter(new FileWriter(path)); Du willst aus o.g. Zeile folgendes machen: BufferedWriter out = new BufferedWriter(new FileWriter(path, true)); Mit dem boolean Parameter sagst Du dem FileWriter, er soll die Datei nicht überschreiben, sondern Daten anhängen. Exakt so, wie es in der Doku steht. Peter
  19. kingofbrain

    Java Chat Programm

    Mit dem P2P Einwand habt Ihr natürlich recht, daran habe ich nicht gedacht. Den Einwand / Hinweis von Speedi an mich verstehe ich nicht. Wenn es darum geht, dass beide Klassen die 8888 als Port verwenden - natürlich muss man hier unterschiedliche Ports angeben, das sehe ich als Selbstverständlichkeit an. @OP Erzähl mal, was Du wirklich machen sollst, sonst müssen wir hier rumspekulieren. Also nicht "ich soll die beiden in ein Programm zusammenbauen", sondern was soll hier mit diesem Programm passieren?. Peter
  20. kingofbrain

    Java Chat Programm

    Die Frage, die sich mir stellt, ist: warum? Der Trick an einem Chat mit Client und Server ist ja, dass der Server irgendwo zentral läuft, und n Clients an anderer Stelle betrieben werden. Wenn es trotzdem gefordert ist, dann nimm den Inhalt der beiden main-Methoden, schreib ihn in eine eigene main-Methode einer neuen Klasse und fertig. Dann werden ein Server- und ein Clientprozess gestartet und betrieben. [EDIT]Ach ja, verwende für Quellcodeausschnitte bitte beim nächsten Mal die entsprechenden CODE-Tags, dann ist das besser lesbar. [/EDIT] Peter
  21. Das finde ich sehr anmaßend, ich stelle keine dämlichen Fragen und hab auch noch keine gestellt. Nein im Ernst, wenn jemand exakt die Zeile aus der Fehlermeldung in Verbindung mit einem Link zu einer Ressource, wo ihm diese Art von Fehlermeldungen erklärt wird, erhält, und sich anhand dieser Informationen nicht das benötigte Wissen erarbeiten kann, um das Problem zu lösen, ist er in meinen Augen wirklich nicht für die Softwareentwicklung geeignet. Was passiert, wenn der Fehler mal ein bisschen exotischer ist (IO-Fehler, XML-Schema-Fehler, usw.)? Und welche Threads ich überspringe, wirst Du mir überlassen müssen. Danke. Das wars übrigens von meiner Seite mit OT (BTW wo ist Deine Erklärung und Hilfe für den OP? ) Peter
  22. Die Datei wird immer wieder neu angelegt, weil Du dem FileWriter nicht sagst, dass Du an die Datei anhängen willst. Die API Doc zu FileWriter gibt Dir die entsprechende Info (-> Konstruktor). Beim zweiten Problem musst Du das selbst machen. Es gibt seit Java 5 (oder 6?) die Möglichkeit, formatierte Strings zu verwenden, allerdings habe ich das noch nicht gemacht. Ansonsten schau einfach nach, wie viele Zeichen Dein String hat und füll in einer Schleife bis zur gewünschten Anzahl mit Leerzeichen auf. [EDIT] noch kurz gegoogelt: http://java.sun.com/j2se/1.5.0/docs/api/java/util/Formatter.html[/EDIT] Peter
  23. Das liegt an Deiner Definition der update-Methode. Du übergibst in der Methode als Parameter ein Observable und ein Object. Der Börsianer weiß aber, dass ihm hier die Aktie übergeben wird. Also castet er das übergebene Object entsprechend. Der Pfeil vom Börsianer zum Observer heißt, dass der Börsianer das Interface Observer implementiert. Schau Dir hierzu am besten noch mal ein UML-Buch durch, das sind UML Grundlagen. Peter
  24. Wenn Du eine NullPointerException nicht interpretieren kannst oder willst, ist die Programmierung nichts für Dich. Les Dir an, was null ist, überprüfe, ob an der gezeigten Stelle etwas null sein kann und ändere es. Die Fehler anderer Leute, die leicht zu fixen sind, wird hier keiner übernehmen. Peter
  25. In genau so eine natürlichsprachliche Erklärung wie ich sie oben angeführt habe. Die Beschreibungen in Deinem "Head First" Buch (das ich erst lange nach dem GoF Design Pattern Buch gelesen habe) finde ich allerdings auch recht sprechend und gut verständlich. Peter

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...