Uff! Here is the answer! And a new (much easier) question.

There was an exception thrown during my self-written cell renderer. I
didn't even include the code of this class because I didn't expect that
kind of surprise (so I admit that you had no chance to find it). Here is
the buggy code::

 qx.Class.define("lino.ForeignKeyCellRenderer",
 {
  extend : qx.ui.table.cellrenderer.String,
  construct : function(colIndex)
  {
    this.base(arguments);
    this.__colIndex = colIndex;
  },
  members :
  {
    __colIndex : null,
    _getContentHtml : function(cellInfo) {
        if (cellInfo.rowData) {
            var s = cellInfo.rowData[this.__colIndex];
            return qx.bom.String.escape(s);   /** here it is **/
        }
        return "";
    }
  }
 });

The problem is that I call `qx.bom.String.escape` possibly with a null
value. Changing the line

  return qx.bom.String.escape(s);   /** here it is **/

into

  if (s) return qx.bom.String.escape(s);

did solve my problem.

And my new question is: how is it possible that I didn't get any
notification of that exception? I guess it is because I use the built
and not the source version? Is that correct?

My lesson from this story: don't use the built version for debugging.

Luc

------------------------------------------------------------------------------
Colocation vs. Managed Hosting
A question and answer guide to determining the best fit
for your organization - today and in the future.
http://p.sf.net/sfu/internap-sfd2d
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to