Autor Thema: NotesStream.open - auf Datei auf web server zugreifen  (Gelesen 5055 mal)

Offline buzi

  • Aktives Mitglied
  • ***
  • Beiträge: 171
Hallo zusammen,

mein Agent braucht lesenden Zugriff auf eine Datei die auf einem anderen Notes Server liegt. Aufruf wie folgt:

Code

opened = in_streamProdukte.Open("http://000.0.000.000/Web/XML.nsf/id/Produkte?openDocument")


Wobei 000000... die IP-Adresse des Servers ist.

Wenn ich die Adresse im Webbrowser eingebe, wird die xml-Datei direkt angezeigt. Was muss ich im open-Befehl eingeben, damit ich auf den Inhalt der Datei zugreifen kann? Und ist es möglich, dort eine neue Datei anzulegen? Ich weiß zu wenig über die Art, wie Lotus Notes mit Dateien umgeht, um zu verstehen, ob die xml-Datei dort im Dateisystem zu finden ist oder in einder Datenbank enthalten ist.

Danke für eure Hilfe!

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: NotesStream.open - auf Datei auf web server zugreifen
« Antwort #1 am: 17.12.15 - 12:38:17 »
Code
Function GetHTMLWindows(strURL As String) As String
	On Error GoTo logError
	
	Dim xmlHTTP As Variant
	Dim strHTTPReturn As String

	Set xmlHTTP = CreateObject("MSXML2.ServerXMLHTTP")

	xmlHTTP.open "GET", strURL
	xmlHTTP.Send
	strHTTPReturn = xmlHTTP.responseText

	GetHTMLWindows = strHTTPReturn

	GoTo EndeZ
logError:
'--	errorHandle 
	Resume endez
EndeZ:
End Function

Mit Java geht es direkter ;-)
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: NotesStream.open - auf Datei auf web server zugreifen
« Antwort #2 am: 17.12.15 - 19:27:19 »
Mit Lotusscript geht es auch
http://www-12.lotus.com/ldd/doc/lotusscript/lotusscript.nsf/1efb1287fc7c27388525642e0074f2b6/1586188222364eb68525642e0075cdbe?OpenDocument

Es gibt aber glaub ich die Einschränkung, dass es nur in lokalen DBs geht

Gruß Roland
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Offline buzi

  • Aktives Mitglied
  • ***
  • Beiträge: 171
Re: NotesStream.open - auf Datei auf web server zugreifen
« Antwort #3 am: 18.12.15 - 09:21:06 »
Hallo zusammen,

leider hat mir noch keiner wirklich weiter helfen können. Ich möchte nicht auf ein Notes-Dokument zugreifen sondern es handelt sich um eine xml-Datei, die ich nur streamen will. Der Aufruf muss also lauten:

Code
	Set in_streamProdukte = session.CreateStream()
	opened = in_streamProdukte.Open("http://000.0.000.000/Web/XML.nsf/id/Produkte?openDocument")

Geht das nur auf der Datenbank wo die Datei liegt?
Kann ich sie mir vielleicht irgendwie runter kopieren?



Offline buzi

  • Aktives Mitglied
  • ***
  • Beiträge: 171
Re: NotesStream.open - auf Datei auf web server zugreifen
« Antwort #4 am: 18.12.15 - 10:33:07 »
Hallo BubbleBoy,

ich mache es auch gern in JAVA wenn das einfacher ist. Da gebe ich im Stream einfach direkt die URL an, oder?

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.885
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: NotesStream.open - auf Datei auf web server zugreifen
« Antwort #5 am: 18.12.15 - 11:17:38 »
Du hast ZWEI Lösungen bekommen... Was genau passt Dir an den beiden Lösungen nicht? Der NotesStream kann das einfach nicht... Aber beide Lösungen tun genau das, was Du willst.. Gut: Die zweite hat den Nachteil, dass Sie über den WebNavigator geht, der nicht unbedingt vorhanden sein muss, aber auch die tut was Du willst...
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: NotesStream.open - auf Datei auf web server zugreifen
« Antwort #6 am: 18.12.15 - 12:37:38 »
Wenn du wirklich mit XML-Dateien über den HTTP-Dienst managen willst, dann solltest du auf Java umsteigen. Zu Java und Stream gibt es viele Beispiele im Netz. Wenn dein Ziel nach wie vor die NotesStream-Klasse ist, dann würde ich einen Java "Web-Datei-Manager" Agenten schreiben, der temporär die XML-Dateien im Filesystem bereitstellt, denn Dateien sind für die NotesStream-Klasse kein Problem.
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline thkn777

  • Aktives Mitglied
  • ***
  • Beiträge: 176
Re: NotesStream.open - auf Datei auf web server zugreifen
« Antwort #7 am: 18.12.15 - 14:23:00 »
Vielleicht gucke ich grad völlig in die falsche Richtung, aber mir kommt Deine URL seltsam vor.

Der Domino URL-Befehl, um eine in einem Notes-Dokument angehängte Datei (z.B. abc.xml) zu öffen, lautet prinzipiell so:
http://Host/Datenbank/Ansicht/Dokument/$File/Dateiname?OpenElement

UND

Bisher bin ich immer davon ausgegangen, daß Streams im Notes sowieso nur ein Open auf File-Objekte machen können (siehe auch tode's Antwort):
flag = notesStream.Open( pathname$ [ , charset$ ] )

Von daher musst Du meiner Meinung nach ein anderes Verfahren einsetzen, um die HTTP-Connection aufzubauen und von dort etwas zu lesen. Die Nutzung einer speziellen MSXML-Funktion (siehe pram) könnte eine Variante davon sein.

Vielleicht hast Du einfach die schon gemachten Vorschläge falsch interpretiert? Wir haben schon verstanden, daß Du keinen XML-Parser brauchst und Dich nicht durch die XML-Nodes hangeln möchtest. Du möchtest NUR den Text-Stream haben - in dem dann "zufällig" XML steht.

Viel Erfolg!

Offline Tim Pistor

  • Aktives Mitglied
  • ***
  • Beiträge: 229
  • Geschlecht: Männlich
    • www.pistor.is - Tim Pistor IT-Beratung
Re: NotesStream.open - auf Datei auf web server zugreifen
« Antwort #8 am: 18.12.15 - 14:54:04 »
Vielleicht gucke ich grad völlig in die falsche Richtung, aber mir kommt Deine URL seltsam vor.
Der Domino URL-Befehl, um eine in einem Notes-Dokument angehängte Datei (z.B. abc.xml) zu öffen, lautet prinzipiell so:
http://Host/Datenbank/Ansicht/Dokument/$File/Dateiname?OpenElement

Die Maske könnte doch so gebaut sein, dass sie XML zurückgibt...

Edit: Man muss ja nicht den ganzen Code auf Java umstellen. Für solche Zwecke haben wir z.B. eine auf LS2J basierte Bibliothek gebaut. Lässt sich dann überall einfach & bequem einbinden...
« Letzte Änderung: 18.12.15 - 15:08:06 von Tim Pistor »

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz