jump to article
...intermittent thoughts

Lesson learned

Manchmal muss man sich einfach nur eine Notiz machen, und das Leben wäre viel einfacher...

Seit einige Wochen hatte ich Problem mit meiner lokalen Entwicklungsumgebung. Da ich gerade einen Vortrag vorbereite war es nun an der Zeit, diese Probleme zu lösen. Also habe ich gestern einmal den kompletten Server neu installiert - naja, eigentlich keine wirklich schwere Arbeit, aber irgendwie scheue ich mich schon immer vor solchen Schritten. Dummerweise half dies auch rein gar nichts. Also habe ich ein Versions Downgrade gemacht - ich war nun fast sicher, dass ich ein Problem mit der aktuellsten Version habe und wollte auf die Version zurück, die wir auch produktiv einsetzen. Als ich mit dieser Aktion durch war, hatte ich eigentlich erwartet, ein perfekt funktionierendes System zu sehen. Weit gefehlt! Das Aussehen der generierten Seiten war noch genauso schrecklich wie vorher - und ich ziemlich ratlos.

Da nun aber des Problem definitiv nicht an der Server-Version liegen konnte, wusste ich wenigstens, dass ich noch einmal sehr genau nach eigenen Fehlern suchen musste. Nach einem kompletten Durchsuchen aller HTTP-Einstellungen blieb mir nur noch, ein und dieselbe Seite auf einem Produktivserver aufzurufen, danach lokal aufzurufen, und den HTML-Code zu vergleichen. Bei mehr als 100kB Quellcode bei den betroffenen Seiten eine Sache, die ich eigentlich um alles in der Welt vermeiden wollte. Wenn ich nur gleich an das absolut augenfällige gedacht hätte!

Beide Seiten unterschieden sich praktisch nur durch eine einzige Zeile, die erste:

auf dem Produktiv-System:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

auf dem Test-System:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">


Und schon war alles klar: Durch die unterschiedliche DTD-Angabe schaltet der Browser in den So genannten Standard Compliance Mode - dummerweise reagiert der Browser dann eben komplett anders auf die angaben im Quellcode. Neben diversen unterscheiden in der Darstellung des Box-Modells werden aber auch CSS-Klassen case-sensistiv und das ist bei Seiten die CSS exzessiv nutzen eben ein Problem.

Als ich diese Zeile gefunden hatte, war mir auch schon klar, woran es genau lag. In der Notes.ini des lokalen Entwicklungssystems hatte ich einen einzelnen Eintrag hinzugefügt:

DominoCompleteDoctype=1

Was eben genau die Umschaltung der Angabe auf die loose.dtd erzwingt. Der Quellcode der Seite wird aber dadurch keineswegs sauberer. Das eigentlich dumme daran war eigentlich nur, dass ich diese Zeile Testweise in die Notes.ini eingefügt hatte, keinen Kommentar hinzugefügt hatte und dann komplett vergessen hatte, was und warum ich es gemacht hatte.

Ergo: never change a rare setting without a comment!
  1. 1) Assignment help online said: (14.09.2018 8:44:16 GMT)
    Assignment help

    We have already set a high standard for assignments . We always make sure that we maintain that standard because our customer satisfaction is our main priority. We have a strict quality control unit. They scrutinize the solutions and assure us about the quality. We do not compromise with the quality. If we are not satisfied, we ask the writers to revise the assignment solutions.Expert assignment helpers of Allassignmenthelp are well efficient and capable of creating unique assignments for college or university students all across the globe

  2. 2) AllAssignmentHelp.com reviews said: (15.09.2018 11:45:27 GMT)
    Lesson learned

    you can go through Allassignmenthelp.com reviews. It will help you to know about the services, and it will help you to know whether that site is reliable or not. This is a way of understanding the opinion of users, and it helps the website to maintain its functionality and reliability.


Add Comment
 
Subject:
   
Name:
E-mail:
Web Site:
 
Comment:  (No HTML - Links will be converted if prefixed http://)
 
Remember Me?