20110331

Das User-Snippet Running a Source Version from a Web Server verrät den Trick, den ich schon ahnte:

Make sure the relative paths on the web server match those on your file system, e.g. if your app lives on the file system at /a/b/A/myapp and your qooxdoo installation is at /a/b/Z/qooxdoo-sdk and the server path to your app is /web/apps/myapp then make sure the server path to qooxdoo is /web/Z/qooxdoo-sdk so that relative references like ../Z/qooxdoo-sdk will work under the web server.

Wenn ich unter Linux entwickelte, könnte ich im lokalen media-Verzeichnis einen symbolic link zum SDK-Verzeichnis machen. Das ist die einzige akzeptable Lösung, denn ich kann ja nicht für jede Lino-Anwendung, die ich entwickle, eine Kopie des SDKs machen. Aber ich arbeite noch unter Windows XP. Junctions wäre da beinahe das Richtige, aber leider habe ich FAT32 und nicht NTFS.

Oh, aber da fällt mir auf: ein anderer Weg wäre, dass ich makeui die qxapp nicht ins lokale media-Verzeichnis generieren lasse, sondern in ein Verzeichnis im Qooxdoo SDK. Damit das nicht mit dem Code von Qooxdoo Konflikt gerät, kommen die alle unterhalb eines Verzeichnisses lino_apps. Es ist zwar nicht gerade höflich, ins Verzeichnis eines anderen Softwarepakets reinzuschreiben, aber was will ich machen…

En passant habe ich meine Kopie von Qooxdoo aktualisiert: Updated to revision 26451. Hier die Dateien, in denen ich zum Debuggen console.log-Anweisungen hinzugefügt hatte:

qooxdoo\framework\source\class\qx\ui\table\pane\Pane.js
qooxdoo\framework\source\class\qx\ui\table\model\Remote.js
qooxdoo\tool\pylib\generator\config\Config.py

Nach einigen Stunden Wurstelei scheint das nun endlich zu gehen. Ich fang mal an, das zu dokumentieren: https://www.lino-framework.org/topics/qooxdoo.html. Check-in 20110331 wegen Feierabend.