Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: peppi am 20.09.04 - 10:50:18

Titel: Name eines Mailanhanges mit Java auslesen
Beitrag von: peppi am 20.09.04 - 10:50:18
Hallo zusammen,

ich lese mit einem Javaprogramm die Inhalte meiner mails auf dem Domino aus. Das ist beim Absender, Betreff oder Body problemlos über doc.getItemValueString("Body"); möglich. Nun versuche ich noch den Namen eines möglichen Anhanges auszulesen. Kann mir da vielleicht jemand weiterhelfen?

Danke!

Peppi
Titel: Re:Name eines Mailanhanges mit Java auslesen
Beitrag von: umi am 20.09.04 - 12:46:56
ja entweder mit getEmbeddedObjects des NotesDocuments oder des BodyFelds (als RichtextFeld) siehe dazu die Designerhilfe...
Titel: Re:Name eines Mailanhanges mit Java auslesen
Beitrag von: peppi am 20.09.04 - 14:40:49
Ich arbeite mit dem JBuilder, also nicht mit der Lotus Entwicklungsumgebung.
Es muss doch irgendwie möglich sein, genau wie beim Betreff mit
doc.getItemValueString("Subject"); auch auf das Attachment zugreifen zu können. Ich wüsste nicht wie es mit Embedded Object gehen soll. Hast du da vielleicht ein Bsp.?

Danke!

Peppi
Titel: Re:Name eines Mailanhanges mit Java auslesen
Beitrag von: umi am 20.09.04 - 14:55:05
Naja, geradeaus und dann links....

java.util.Vector dieAttachments = doc.getEmbeddedObjects();
Hier das Beispiel aus der Designer Hilfe....
Code
import lotus.domino.*;
import java.util.Vector;
public class JavaAgent extends AgentBase {
  public void NotesMain() {
    try {
      Session session = getSession();
      AgentContext agentContext = session.getAgentContext();
      // (Your code goes here) 
      Database db = agentContext.getCurrentDatabase();
      DocumentCollection dc = db.getAllDocuments();
      Vector v = null;
      Document doc = dc.getFirstDocument();
      while (doc != null) {
        if (doc.hasEmbedded()) {
          System.out.println("\"" +
          doc.getItemValueString("Subject") +
          "\" has embedded objects.");
          v = doc.getEmbeddedObjects();
          if (v.isEmpty())
            System.out.println(
                  "\tEmbedded object is an attachment.");
          else for (int i=0; i<v.size(); i++) {
            EmbeddedObject eo = (EmbeddedObject)v.elementAt(i);
            System.out.println
            ("\t" + eo.getName() + " of " + eo.getClassName());
            }
          }
        doc = dc.getNextDocument(doc); }
  
    } catch(Exception e) {
      e.printStackTrace();
    }
  }
}
Titel: Re:Name eines Mailanhanges mit Java auslesen
Beitrag von: peppi am 20.09.04 - 16:09:35
Das Ganze funktioniert nicht! Das Embedded Object ist NULL, obwohl die mail einen Anhang hat.
Weiterhin kann ich auch nicht das Datum bzw. die Uhrzeit der mail auslesen. Das sollte doch eigentlich mit  doc.getItemValueString("PostedDate") funktionieren. Leider tut es das nicht!
Titel: Re:Name eines Mailanhanges mit Java auslesen
Beitrag von: umi am 20.09.04 - 16:39:42
Dann musst du evtl. über das RichtextItem "Body" gehen und von dort die Embedded Objects holen..