Ouverture de base sur un autre serveur

Forum destiné aux questions sur le développement : Formules, LotusScript, Java ...

Ouverture de base sur un autre serveur

Messagepar seroa » 24 Mars 2011 à 17:08

Bonjour,

J'ai crée un agent planifié qui doit écrire sur une base mail.

J'ai un soucis avec l'ouverture de la base mail sur le serveur autre que le serveur ou tourne l'agent.

J'obtiens le message suivant sur la console :

NotesException: Database serveur!!database.nsf has not been opened yet

Voici la méthode qui retourne la base mail :

Code : Tout sélectionner
public Database extractMailBox(String user)  {
      Database mailbox = null;
      try{
         Session session = db.getParent();
         try {
            Registration reg = session.createRegistration();
            try {
               StringBuffer mailserver = new StringBuffer();
               StringBuffer mailfile = new StringBuffer();
               StringBuffer maildomain = new StringBuffer();
               StringBuffer mailsystem = new StringBuffer();
               Vector profile = new Vector();
               reg.getUserInfo(user, mailserver, mailfile, maildomain, mailsystem, profile);

               mailbox = session.getDatabase(mailserver.toString(), mailfile.toString());
               
            } finally {
            dominoRecycle(reg);
            }
         } finally {
            dominoRecycle(session);
         }
      } catch (NotesException e) {
         e.printStackTrace();
      }
      return mailbox;
      
   }


Si vous avez une piste ?

Merci.
Dernière édition par seroa le 05 Avr 2011 à 10:45, édité 1 fois.
seroa
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 304
Inscrit(e) le : 08 Nov 2007 à 08:36
Localisation : Mâcon

Messagepar Michael DELIQUE » 25 Mars 2011 à 11:05

salut

1 - vérifier le niveau de sécurité de l'agent (faut peut etre lui donnée plus de possibilité)
2- tester si la base est effectivement ouverte via une fonction de ce type

Code : Tout sélectionner
public boolean dbExists(Database dbTest){
         
      try{
         if (dbTest == null)
         {return false;}else{
            if (dbTest.isOpen()==true){
               if (dbTest.getCreated().toString().trim().equals("")||dbTest.getReplicaID().toString().trim().equals("")){
                  return false;
               }
            }else{return false;}
         }
            
         return true;
      } catch(NotesException exNotes) {
         System.out.println("dbExists : " + exNotes.id + " " + exNotes.text);
      exNotes.printStackTrace();
      return false;
      } catch(Exception ex) {
         System.out.println("dbExists : " + ex);
         ex.printStackTrace();
         return false;
      }catch (NoSuchMethodError e){      
         System.out.println("dbExists : Tentative d'accéder une méthode qui n'existe pas : " + e);
         e.printStackTrace();
         return false;
      }


si pas ouverte essayer un db.open(); l'aide en ligne t'en dira plus
Cordialement

Michael (SMS-Phobique)
----------------------------
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi."
Albert EINSTEIN
Avatar de l’utilisateur
Michael DELIQUE
Administrateur
Administrateur
 
Message(s) : 12183
Inscrit(e) le : 16 Déc 2004 à 10:36
Localisation : Paris/Cergy

Messagepar seroa » 05 Avr 2011 à 10:44

Bonjour,

Pour information, il manquait quelque chose dans le serveur de configuration de mon serveur mail :

Dans l'onglet Security, partie Trusted servers, j'ai ajouté le nom de mon serveur ou tourne l'appli.

Je n'ai plus de problème à présent.
seroa
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 304
Inscrit(e) le : 08 Nov 2007 à 08:36
Localisation : Mâcon


Retour vers Développement

cron