-
Java et Lotus Domino
Voilà je suis un débutant en JAVA.
J'ai réussit sous Notes à faire des agents JAVA.
Maintenant je cherche a externalisé mes programmes.
Pour ça j'ai commencé avec un programme de test que j'ai trouvé sur le Net pour être capable d'initialisé une session:
a.java
------
import lotus.domino.*;
public class a extends NotesThread
{
public static void main(String argv[])
{
System.out.println("abc");
a t = new a();
t.start();
}
public void runNotes()
{
try
{
Session s = NotesFactory.createSession("myhost:63148");
// To bypass Readers fields restrictions
// Session s = NotesFactory.createSessionWithFullAccess();
String p = s.getPlatform();
System.out.println("Platform = " + p);
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
mon CLASSPATH=C:\Program Files\IBM\Lotus\Notes\Data\domino\java\NCSO.jar
La compilation ne retourne aucune erreur.
Quand j'execute java a
-----------------------
Exception in thread "main" java.lang.NoClassDefFoundError: a
Caused by: java.lang.ClassNotFoundException: a
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Je comprends pas ce que je fait mal
Merci de votre aide. Dès que j'aurais compris pourquoi ça fonctionne pas je pourrais externaliser mes batchs de Domino.
-
Bon j'ai finalement trouvé d'où vient le(s) problème(s).
Il y avait un problème avec le CLASSPATH
En faite il faut plutôt choisir le Notes.jar (selon certains forums également le NCSO.jar pour avoir l'ensemble des actions mais moi je n'en ai pas eu besoin).
Il faut aussi penser à ajouter le répertoire courant.
Merci benou pour ton Topic
Il faut également penser à ajouter dans le PATH le chemin de la dll nlsxbe.dll
Pour moi PATH=%PATH%;C:\Program Files\IBM\Lotus\Notes\
Et là tout marche correctement (il faut bien évidement s'assurer que les tâches HTTP et DIIOP soient lancées sur le serveur Domino)
Voir la section Error messages de Java access to the Domino Objects, Part 2
Voir également Java access to the Domino Objects, Part 1