Domino 9 und frühere Versionen > Entwicklung
JavaAgent - Probleme
renele:
Hallo,
Java kann ich programmieren, aber wenn dann noch Notes hinzu kommt, tauchen Probleme auf.....
1.Wenn ich in einem Agent eine Ausgabe ansteuer (System.out.println(...)), wo wird diese angezeigt?
2. Mittels View kann ich ja einen Sicht auf eine Maildatenbank bekommen - nimmt man hier die englische oder deutsche Bezeichnung für die Sicht (also "All Documents" oder "Alle Dokumente")?
3. Ich möchte eine Agent beim Eintreffen einer neuen Mail starten. Dieser soll prüfen, ob "Betreff" in der Form "Info xyz" besteht, wenn ja, soll er die Information "xyz" holen (Java greift hier auf einen externe Datenbank zu und holt Infos) und an "From", den Sender der Mail also, zurückschicken.
Wenn das erledigt ist, soll er die Mail in einen Ordner verschieben (demnach dürfte man nicht "All documents" als View nehmen.....)!
Ich habe eine deutsche Version von Notes (hier im Geschäft)!
Gruß
René
Marinero Atlántico:
zu 1: Datei\Extras Java Debug Konsole anzeigen.
zu 2: Alias der View in Domino Designer. Wenn kein Alias, dann normaler Name. In Domino Menü Element der DB Ansichten anklicken.
zu 3: als Forums-Frage für meinen Geschmack zu wenig fokussiert/zu grobgranular.
Gruß Axel
Semeaphoros:
Uebersetzung von Axels Antwort zu 3:
Das ist ein realisierbares Konzept, was ist eigentlich Deine Frage?
Genau, das möchte ich auch wissen.
renele:
Hallo,
wow - bin überrascht, wie schnell eine Antwort kam.
zu 3.:
Ich weiß nicht, wie ich an die Felder (an die Mail an sich und an Betreff/Thema, Von,...) der ankommenden Mail herankomme..... Der Agent soll keine komplette Sicht "durchwühlen", sondern nur das angekomme Dokument. Wie macht man das?
Wenn ich den Betreff/Thema in einen String speichern kann, kann ich auch meine Java-Klasse starten, die die Daten "besorgt".
Hab mal ein wenig getestet und folgenden Code erstelllt. Wie man sieht, habe ich Probleme mit den "Benamsungen" der Mail-Felder, da ich hier nur einen Client habe.......
Wenn man die Klasse durchschaut, habe ich bereits ein Gerüst, aber das funktioniert nicht so richtig..... leider! Warum?
import lotus.domino.*;
public class JavaAgent extends AgentBase{
public void NotesMail(){
try{
Session session = getSession();
AgentContext agentContext = session.getAgentContext();
DbDirectory dir = session.getDbDirectory(null);
Database db = dir.openMailDatabase();
View view = db.getView("All");
Document doc = view.getFirstDocument();
while(doc!=null)
{
String von = doc.getItemValueString(("From"));
String betreff = doc.getItemValueString(("Betreff"));
//
if(betreff.startsWith("Info")){
//externe Klasse starten
//hier wird dann die Klasse aufgerufen, die die Infos besrorgt
Document reply = doc.createReplyMessage(false);
reply.replaceItemValue("Thema","Ihre angefragten Informationen zu xyz")
reply.replaceItemValue("Body","MailBody");
reply.send(doc.getItemValueString(("From")));
doc=view.getNextDocument(doc);
}
}
}catch(Exception e){
e.printStackTrace();
}
}
}
Marinero Atlántico:
s. Attachments für Agenteneinstellung.
Smarticon gelbe Raute ganz links gibt dir eine Eigenschaftenbox. Dort Dokument/2. Reiter werden die Feldnamen + Wert des Feldes angezeigt.
Solltest aber wirklich darüber nachdenken, eine Domino/LotusScript Einführung lesen (kenne jetzt keine).
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln