Domino 9 und frühere Versionen > Entwicklung

Java Agent funzt nicht

(1/2) > >>

JD:
Hallo alle, sieht jemand vielleicht den Fehler in meinem Agenten??

Er soll alle Dokumente einer Datenbank neu speichern, zwecks neuer Felder in der Maske, die die alten Docs noch nicht enthalten.


--- Code: ---
import lotus.domino.*;

public class JavaAgent extends AgentBase {

   public void NotesMain() {

      try {
         Session session = getSession();
         AgentContext agentContext =  session.getAgentContext();

           Database database = agentContext.getCurrentDatabase();
               DocumentCollection docCollection = database.getAllDocuments();
               Document doc = docCollection.getFirstDocument();
               
               while (doc != null) {
                  doc.save();
                    System.out.println("Doc saved");
                    doc = docCollection.getNextDocument(doc);
               }
               
      } catch(Exception e) {
         e.printStackTrace();
      }
   }
}

--- Ende Code ---

Danke schonmal im voraus

Performance:
Ich dachte auch das die doks gespeichert werden, wenn im dok nichts geändert wird, geht in Skript aber nicht mit Java.
Wenn du aber Felder im Dok veränderst funktioniert das einwandfrei.


cu
 

JD:
Hmmm also bezieht die Javaklasse die Maske nicht mit ein oder wie??? ???

Hast Du ne Idee wie ich das trotzdem machen kann? Also das doc erneuern nachdem ich in der Maske was geändert habe??? Ausser manuell jetzt ;)

Muss ich vielleicht die Feldwerte alle auslesn und zurückschreiben oder ???

Performance:
sorry hab da was falsch verstanden .

sollte gehen mit:    
doc.computeWithForm(false, false);
doc.save(true, false);

genau so wie in Skript.


cu

JD:
Dankeeeeeee  ;D ;D ;D ;D

das funzt sehr gut!!!!!

Aber warum findet man diese Methode mit der Form nicht so ohne weiteres in der Klassenreferenz *brrrrrrr* Naja, jetzt weiss ich ja wie die Methode heisst dank Dir  :-*

Anbei komme mir schon echt blöde vor, aber wo ist denn die Standardausgabe bei Notes, d.h. wenn ich jetzt nen Agent im Client ausführe und im Code sowas wie System.out.println() habe, wo tauchen die Ausgaben eigentlich auf???? Kann man da irgendein Fenster aufmachen oder so???

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln