Domino 9 und frühere Versionen > ND6: Entwicklung
HTML Seiten auslesen
MadMetzger:
Mit einem Java Agenten kann man das machen, ich habe da in einem Buch mal ein Programmierbeispiel zu gelesen. Das Buch heißt "Java unter Lotus Domino" von Thomas Ekert. Ich weiß aber nicht, ob es rechtens ist, diesen Code hier einfach abzutippen.
Aber zum Prinzip funktioniert das per HttpUrlConnection, die dann einen InputStream zurückliefert, den man als String auslesen kann.
tower2:
Hier ein Besipiel:
Die Parameter (url etc) werden dem Agenten per Dokument übergeben.
Java-Agent:
--- Code: ---import lotus.domino.*;
import java.io.*;
import java.net.*;
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();
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();
}
}
}
--- Ende Code ---
Navigation
[0] Themen-Index
[*] Vorherige Sete
Zur normalen Ansicht wechseln