Autor Thema: Maske im Web dynamisch ändern  (Gelesen 1587 mal)

Offline Mark³

  • Senior Mitglied
  • ****
  • Beiträge: 386
  • Geschlecht: Männlich
  • Nordisch by Nature
    • Das Leben aus der Sicht eines Menschen
Maske im Web dynamisch ändern
« am: 30.08.07 - 11:27:15 »
Ich benötige im Web eine Funktion, um ein Dokument als XML mit Stylesheet auszugeben. Zur Erzeugung des Dokuments habe ich einen Agenten, der aus einem Dokument über DocumentContext XML-Code erzeugt.
Dazu nutze ich einen WebQueryOpen-Agenten (siehe http://www.codestore.net/store.nsf/unid/BLOG-20070821 ) und eine Maske, die als Content-Type text/xml ausspuckt. Das Stylesheet habe ich als Page in meiner DB gespeichert, so dass ich eine schicke Darstellung bekomme, die auch gut zu drucken ist.
Um nun unterscheiden zu können, ob ich das Dokument klassisch als Notes-Dokument im Web anzeigen lassen möchte oder als XML-Dokument, habe ich folgende Masken-Formel in die Ansicht eingebaut:

Code
@If(@Contains(@UrlQueryString;"xml");"xml";"")

Damit kann ich nun einfach die Maske wechseln, indem ich den Query-String (also die URL, mit der ich das Dokument aufrufe), ergänze um
Code
&xml
oder auch
Code
&Form=xml
oder was mir so einfällt.

Ist das eine praktische Handhabung oder geht das ganze auch viel einfacher? Wenn ja, könnt ihr das Thema nach 'Tips und Tricks' verschieben, wenn nein, bitte ich um eure Vorschläge, wie es besser geht  8)
sagt Mark.



slowfood.de

Offline Mark³

  • Senior Mitglied
  • ****
  • Beiträge: 386
  • Geschlecht: Männlich
  • Nordisch by Nature
    • Das Leben aus der Sicht eines Menschen
Re: Maske im Web dynamisch ändern
« Antwort #1 am: 30.08.07 - 11:44:38 »
ich hab das noch etwas ausgefeilt. Mit der Form Formula
Code
@If(@Contains(@UrlQueryString;"OpenDocument");"xml";"")
öffnet sich nun die XML-Maske, wenn ich das Dokument anschaue. Will ich es aber editieren, gelange ich automatisch in die Notes-Maske  O0
sagt Mark.



slowfood.de

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: Maske im Web dynamisch ändern
« Antwort #2 am: 30.08.07 - 12:44:01 »
Sieht gut aus.
Wobei ich schlechte Sachen mit über-Gebrauch von XML/XSLT gesehen habe. Leute haben mir erzählt wie flexibel und Trennung-von-Gestaltung-und-Content das doch ist. In der Praxis erinnerte es mich dann eher an Masochismus. Vielleicht hab ich auch einfach die falschen Projekte gesehen.  ;) Jedenfalls hab ich mir fest vorgenommen, innerlich immer bis 3 zu zählen, wenn ich einen dieser "Das-macht-man-heute-mit-xml"-Freaks begegne. Es ist eben ein sehr verboses Format und spätestens wenn Leute beginnen, ein paar gute Schübe xpath statements in ihre business Logik zu mixen, ist der Punkt erreich, an dem ich lachen muß. Ausser ich muß den Schei äh das flexible Design maintainen. Dann such ich mir nämlich den nächsten Baum, auf das der Kelch an mir vorübergeht. 

Ich benutze xml eigentlich nur für remoting/Integration (Webservices in Soap und POX) und natürlich zur Konfiguration in verschiedenen Zeugs (deployment Deskriptoren, ant, hibernate, spring, jsf).
Für Notes Agenten gibts eine Möglichkeit den content-type von text/html auf text/xml umzustellen.  Dann erzeugt Domino auch nicht mehr die HTML-Tags (schau später nach, wie das genau geht). Das muss benutzt werden, wenn Domino als Producer Service  Endpoint benutzt wird.   
Für die Darstellung von Notes-Masken im Web gibts aber afaik diese Möglichkeit nicht.

Zur Zeit hab ich ein Projekt zur Konsumption für irgendwas von factiva.com. Bislang kann mir keiner sagen, welchen Service wir denn nun nehmen, aber ich hab schon 3 Lösungsansätze rausgeschickt  ;D

In JavaScript/Ajax tendier ich deutlich zu JSON.
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline Mark³

  • Senior Mitglied
  • ****
  • Beiträge: 386
  • Geschlecht: Männlich
  • Nordisch by Nature
    • Das Leben aus der Sicht eines Menschen
Re: Maske im Web dynamisch ändern
« Antwort #3 am: 30.08.07 - 13:36:52 »
ich benutze hier aus verschiedenen Gründen XML:
  • es handelt sich um Unfallmeldungen, die an die BG geschickt werden sollen. Die geben sowohl das xsl als auch das xsd vor. Wenn das Dokument so valid ist, kann es direkt über Web an die BG hochgeladen werden
  • die Anwender wollen das natürlich auch drucken. Mit dem vorliegenden XSL passt es automatisch auf eine A4-Seite, früher habe ich dafür alles nach Word geschoben

In einer Notes-Maske oder Seite kann man auch den Content-Type auf text/xml (oder was immer man möchte) einstellen. Genau das tue ich hier, damit ich kein HTML von Domino generiert bekomme.
sagt Mark.



slowfood.de

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz