Lotus Notes / Domino Sonstiges > Java und .NET mit Notes/Domino
Problem mit createSession
m3:
Ich HASSE es, wenn Noobs anscheinend sogar zu blöd sind, die Forumsregeln bei der Anmeldung zu lesen.
Dieser Thread ist ein Crossposting mit http://www.dominoforum.de/modules/newbb/viewtopic.php?topic_id=10790
Da lässt mein Enthusiasmus zu Helfen gleich mal stark nach. >:(
flaite:
@Hermann: Du musst einfach auf cross-posting hinweisen. Einfach ein Link reinposten.
Die Erklärung von taurec hätte ich übrigens auch nicht gewusst.
Nimms nicht persönlich.
Thomator:
Hi,
bei einem getSession() funktioniert weder "" noch null, um eine lokale Session zu bekommen.
Es hilft nur ein String, der null ist. Wenn Du einen Server (Hostnamen oder IP) übergiebst, bekommst Du auch keine lokale, sondern eine remote-session (corba). Deswegen funktioniert es so.
Für lokale Sessions muss das Ganze so aussehen:
String host = null;
Session s = NotesFactory.createSession(host, "user", "password");
Das Ganze ist meiner Meinung nach unsauber in der API programmiert.
Thomas
Ralf_M_Petter:
@Thomator
Bist du dir dessen ganz sicher, dass dem so ist. Meines Verständnis von Java ist zwischen deinem Code und
--- Code: --- Session s = NotesFactory.createSession(null, "user", "password");
--- Ende Code ---
kein Unterschied. Wenn du eine Variable in Java definierst, dann machst du eigentlich einen Verweis auf ein Objekt. Deshalb müsste meiner Meinung nach beides das selbe sein. Werde das mal debuggen und dann Bescheid geben.
Grüße
Ralf
Thomator:
Hallo Ralf,
das ist grundsätzlich kein Unterschied, es sei denn, in der Methode, die aufgerufen wird, findet die Typprüfung vor der null-Prüfung statt.
Das scheint in diesem Fall so zu sein. Das Problem hat so in eben dieser createSession-Methode immer schon existiert.
Übrigens: Wenn ich der Methode als ersten Parameter null übergebe, bekomme ich sogar einen Fehler.
Also zum fliegen bekommt man das Ganze eigentlich nur mit einem String, der explizit null gesetzt ist, oder mit einem gecasteten null, also (String)null, im Aufruf selbst.
Ich denke, dass die Programmierung in der API hier nicht ganz sauber ist.
Wahrscheinlich erfolgt die Prüfung der Parameter in der falschen Reihenfolge, also dass erst geprüft wird, ob es sich um eine Instanz eines Strings handelt.
Und wenn einfach null übergeben wird, ist das eben keine String-Instanz.
MfG Thomas
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln