Autor Thema: Neues Dok aus Java-Applet heraus erstellen  (Gelesen 1467 mal)

Offline manuel

  • Senior Mitglied
  • ****
  • Beiträge: 377
  • Geschlecht: Männlich
  • el pueblo unido
Neues Dok aus Java-Applet heraus erstellen
« am: 11.11.02 - 12:25:00 »
Hallo !

Ich will aus einem Java-Applet heraus ein neues Dokument mit einer bestimmten Maske im Notes erstellen. Es gibt in Java den Befehl applet.getAppletContext().showDocument(), dem eine URL übergeben werden muss. Also erstelle ich mir diese im vorhinein mit folgender Zeile

String url_str = dbNotes.getURL().substring(0, dbNotes.getURL().indexOf('?')) + "/MReservation?OpenForm";

Die schaut dann umgesetzt so aus

notes:///__C1256C6A004B0EC6.nsf/MReservation?OpenForm

Also nach notes:// kommt der Server, in meinem Fall ist es Lokal, also kommt danach gleich wieder ein /. Anschließend die Datenbank und der Befehl (?OpenForm) zum öffnen der Maske MReservation.

In der Praxis funktioniert das dann auch einigermaßen gut, aber eben nur einigermaßen. Beim öffnen der Maske erscheint gleich zu Beginn eine Fehlermeldung "Eintrag im Index nicht gefunden." Wenn ich diese Maske nun schließe erscheint erneut eine Fehlermeldung "Ausgewählter Befehl kann nicht ausgeführt werden."
Und dann stürzt Notes komplett ab "Fehler in Anwendung .... Der Vorgang "read" konnte nicht auf dem Speicher durchgeführt werden ..."

Hat nun jemand von euch eine Idee, wie ich durch solch einen URL Befehl (oder auch auf eine andere Weise) aus einem Java-Applet heraus ein neues Dokument einer bestimmten Maske erstelle? Wenn ich ?OpenForm verwende, muss vorher ein Dokument erstellt werden?


Schönen Gruß
Manuel
V 5.0.2c | Windows 2000

Offline tower

  • Junior Mitglied
  • **
  • Beiträge: 95
  • Geschlecht: Männlich
    • Uwe Schräpler IT-Service
Re:Neues Dok aus Java-Applet heraus erstellen
« Antwort #1 am: 11.11.02 - 17:30:23 »
Hallo, weil ich faul bin schick ich dir einen kompletten Agenten.
Der liest bei mir html-Seiten von einer URL (pdoc) und packt sie in ein Notesdocument (ndoc).

public class JavaAgent extends AgentBase {

   public void NotesMain() {

      try {
         Session session = getSession();
         AgentContext agentContext = session.getAgentContext();
         Database db = agentContext.getCurrentDatabase();
         Agent agent = agentContext.getCurrentAgent();
         Document pdoc = db.getDocumentByID(agent.getParameterDocID());
         Document ndoc = db.createDocument();
         // (Fügen Sie Ihren Code hier ein)
         URL url=null;

         try {

         url = new URL(pdoc.getItemValueString("url"));

            }

            catch (Error e) {e.printStackTrace();

         }

             // Create the Connection
             URLConnection connection = url.openConnection ();
             // Setup the connection parameters and request properties
             connection.setDoOutput (false);
             // Get the URL contents
             String contentLine; String contents = "";
             BufferedReader reader = new BufferedReader (new InputStreamReader
         (connection.getInputStream()));
             while (null != (contentLine = reader.readLine ())) {contents += contentLine;
         }
          //System.out.println(contents) ;
         ndoc.replaceItemValue ("form", "DISK");
         ndoc.replaceItemValue ("disknr", pdoc.getItemValueString("disknr"));         
         ndoc.replaceItemValue ("url", pdoc.getItemValueString("url"));
             ndoc.replaceItemValue ("disktext", contents);
           ndoc.save(true,false);   
      } catch(Exception e) {e.printStackTrace();
      }
   }
}

Gruß aus Berlin

Offline manuel

  • Senior Mitglied
  • ****
  • Beiträge: 377
  • Geschlecht: Männlich
  • el pueblo unido
Re:Neues Dok aus Java-Applet heraus erstellen
« Antwort #2 am: 12.11.02 - 08:45:22 »
Hallo tower

Danke für den Code, nur das ganze spielt sich im Backend ab. Ich bräuchte nun eine Möglichkeit, wie ich ein neu erstelltes Dokument (wie zB ndoc) ins Frontend von Notes (also nicht Web) öffne.

Schönen Gruß
Manuel
V 5.0.2c | Windows 2000

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz