Lotus Notes / Domino Sonstiges > Projekt Bereich
Suche Java Unfähige für ein gemeinsames Newbie Projekt
Axel:
@Ralf_M_Petter
Ich hab's mal probiert und bekomme eine Fehlermeldung.
Netbeans gibt folgende Meldungen aus:
java.lang.UnsatisfiedLinkError: no nlsxbe in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1403)
at java.lang.Runtime.loadLibrary0(Runtime.java:788)
at java.lang.System.loadLibrary(System.java:832)
at lotus.domino.NotesThread.load(NotesThread.java:299)
at lotus.domino.NotesThread.checkLoaded(NotesThread.java:320)
at lotus.domino.NotesThread.sinitThread(NotesThread.java:174)
at test.testprogramm.main(testprogramm.java:21)
Exception in thread "main"
Das Problem muß irgendwo in Zeile 21 liegen. Die Version von Notes.jar ist dabei egal. Ich habs mit R5 und R6 probiert.
Wo liegt denn da der Hase im Pfeffer?
Axel
Rob Green:
MODs / Admins könnt ihr uns bitte ein separates Subforum geben....das wird sonst seeehr unübersichtlich? Zum Abschluss des Projekts kann man ja das Ding einfrieren und separat irgendwo hinstellen.
Meine Fragen / Bemerkungen zum Beitrag von Performance...
- kleine Dingsbumsfehler: " " kannst Du das Kopierte kurz mal checken...scheint ein Umlaut zu sein oder Sonderzeichen
- klasse, daß Du einen Einstieg zur Verfügung stellst :) :)
Ergänzungen eines Anfängers:
- Java Programme kann man auch im kleinen mit Notepad schreiben. Diese bekommen die Endung ".Java" und müssen zwingen den Namen der Klasse haben, die im Programm verwendet wird...
heißt es also zB im Programm "public class ABC.." muß die Datei den Namen "ABC.java" bekommen !!!
- wie in anderen normalen Nicht Notessprachen muß man das Kompilieren selbst übernehmen, wobei wie o.g. kein Maschinencode erzeugt wird, sondern ein Bytecode (!!!), was ihn OS unabhängig macht, da spezielle OS abhängige Java Compiler (Microsofts Java Virtual Machine oder Suns JIT zB) den Bytecode umsetzen in Maschinencode und über einen Java Interpreter zur Ausführung bringen. Das Kompilieren selbst wird mit der .exe "Javac" erledigt. Der Kompilierer erzeugt sogenannte ".class" Dateien...in dem Fall also eine "ABC.class" Datei. Das ist unser in Bytecode kompiliertes Programm.
Im Übrigen ist das wirklich vergleichbar mit Notes Lotus Script, das die Notes Engine beim Speichern immer nur in Bytecode kompiliert und erst beim Ausführen in Maschinencode in Abhängigkeit auf dem OS umsetzt und startet. Dadurch sind Notes Datenbanken OS unabhängig (na ja, nicht immer, aber idR)
- möchte man ein Javaprogramm nach dem Kompilieren testen, kann man "java" oder "javaW" verwenden. Das erste ist für reine textorientierte und das zweite für grafsiche Ausgaben unter Windows. Da nennt sich Java Interpreter.
Also zusammengefasst:
- Java Programm schreiben "ABC.java"
- Java Programm kompilieren mit "javac"
- erzeugt eine "ABC.class" Datei
- mit Interpreter "java/w" testen
Ich hatte mich früher immer gewundert, was diese komplexen, explorerartigen Java Class Dateien Bäume erzeugt....nun das hängt eng mit OOP Modell von Java zusammen, da jedes Programm-Modul "irgendwie" von anderen Modulen abhängt. Hierbei gibt es eine Hierarchie und das ist vergleichbar zu Verzeichnispfaden im OS.
So kann es eine Klasse "Java" geben,
darunter eine Unterklasse "Java lernen" und
eine weitere "Java testen"
...
als Baum ergibt sich
.\Java
.\Java\Javalernen\
Start1.class
Start2.class
...
.\Java\Javatesten\
Test1.class
Test2.class
...
Start1.class kann auf die Methoden und Eigenschaften der Klasse Java zurückgreifen. So wie in Notes auch, wo es eine Art von Klassen-Hierarchie gibt. Da habe ich die Klasse NotesSession und kann mich herunterhangeln bis auf Notes.Item, das alle Eigenschaften/Methoden von NotesSession "vererbt" bekommt, sprich verwenden kann.
In Java gibt es im Gegensatz zu Notes sogenannte "Packages", das sind nix anderes als "gezippte" Klassen, die gruppiert wurden. Damit man nicht wie oben so ewig lange Baumstrukturen bekommt. Denn es gibt in Java cirka 5000 Klassen (in Notes sind es..na...so an die 30-40 ? rofl..) und ca. 50 Packages. Ein Package ist zB das immer wieder erwähnte "Swing". Es gehört zu einem Teil zu der sogenannten Java Foundation Class Bibliothek, das nix anders als die originale Sun Sammlung an Klassen darstellt. Swing verfügt über grafische Möglichkeiten. Ein anderes Package das "java.io" ..zuständig für Bildschirmausgaben etc..."java.net" enthält alles mögliche für Netzwerkzugriffe. Auf der Sun Seite zu Java gibt es eine Übersicht dazu. Wie man die Packages einbinden kann, so wie wir Notesler über Dim NS as New NotesSession starten zur "Eröffnung" der Backendverarbeitung bzw. über "use LSBibliothekABC", kommen wir sicher im 2. Kapitel.
Mehr dazu auf:
http://java.sun.com/docs/books/tutorial/index.html
http://developer.java.sun.com/developer/onlineTraining/Programming/BasicJava1/
http://developer.java.sun.com/developer/onlineTraining/Programming/BasicJava2/
http://developer.java.sun.com/developer/onlineTraining/Programming/JDCBook/
http://developer.java.sun.com/developer/onlineTraining/JavaIntro/
eknori (retired):
Hier mal ein paar Grundlagen:
http://www.boku.ac.at/javaeinf/jein1.html
http://www.programmersbase.net/Content/Java/Content/Tutorial/Java.htm
Rob Green:
geile Tuts...danke eke!
Rob Green:
Beginner Frage :
1. wo liegt der Unterschied zwischen Java und JavaServerPages (JSP)?
2. man liest von der HotSpot Technik, JavaProgramme schneller laufen lassen zu können, indem bestimmte Codebestandteile gecached werden bzw. nur dann geladen werden, wenn sie gebraucht werden...wo "bekommt man HotSpot" her und ist das überhaupt eine akzeptierte Technik?
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln