klar mit der C-API geht das, aber das ist doch nicht der Hype. IBM ist doch DIE!!!! Java Company.
really
http://www.jroller.com/page/fate/?anchor=alphaworks_is_a_scamFür sehr, sehr viele Aufgaben würde ich Java als einfacher als C ansehen.
Ausserdem gibt es sehr viele Unternehmen, die im Notes Umfeld selbstgeschriebene dlls einfach verbieten. Dies mag mit der bekannten "extremen Sorgfalt" zusammenhängen, mit denen so mancher C-Programmierer in der Vergangenheit auf die Stabilität seiner Anwendung geachtet hat (inklusive so spiessiger Kleinigkeiten wie Auswirkungen auf das Gesamtsystem. Gerade in diesem Kontext habe ich seit über 1 Jahr eine Menge Spaß bei meinen phonky DWF-Projekten.
Danke für den Hinweis. Ich werde jedenfalls nicht rumnöhlen und mir mal anschauen, was diese Musterstudenten von Alphaworks da zusammengeschrieben haben. Teile des entsprechenden Codes bilden sicher ein prima Framework, um aus Java-Anwendungen auf Domino zuzugreifen.
@Gandhi: Mit dieser Argumentation könnte man auch behaupten, dass JDBC "eigentlich C" ist, da JDBC Treiber der Klasse 1 bis 3 native Treiber wrappern. Überhaupt. Was sollen eigentlich diese Programmiersprachen. Im Grunde ist doch alles Maschinensprache.
Es benutzt in einer Standard Domino Installation vorhandene dlls. Die Anwendung selbst ist in Java geschrieben. Die bekannten invalidate()-Probleme sind frei nach dem einzigartigen Ted Neward so zu interpretieren:
Der Garbage Collector von Java ist z.T. aus Optimierungsgründen gut darin Java Objekte aufzuräumen aber nicht externe Connections zu Ressourcen in nicht-Java. Deshalb muss man mit solchen Connections vorsichtig sein.
Ein Objekt ist eligible for garbage collection, wenn keine Referenzen mehr auf das Objekt existieren.
Aus Optimierungsgründen werden aber sehr kleine Objekte bei einem garbage collector Lauf teilweise übergangen. C-wrapper sind aus Sicht von Java kleine Objekte (obwohl sie viele Ressourcen halten, die aber ausserhalb der VM).
Deshalb versagt bei denen der Garbage Collector. Gleiches gilt btw. für das JDBC Connection Objekt (weshalb man es immer schliessen soll, oder ein Framework benutzen, dass dies tut).
BTW. ist diese Marinero-on-Ted-Neward Interpretation noch nicht produktiv geschaldet. D.h. ich poste das in Foren und warte, ob sich einer beschwert. 1 Mensch hat mir bisher sogar zugestimmt.
invalidate() muss man eben aufrufen. So schwer ist das auch nicht. Es wird deutlich einfacher, wenn man ein gutes Framework für den Zugriff auf Domino hat. Und das haben diese Studenten von Alphaworks hoffentlich geschrieben.
Gruß Axel