public Component getTableCellRendererComponent( JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { if (!initialized) { myPropComponent.setLabelVisible(false); try { initialized = true; } catch (Exception e) { logger.error("Error detected", e); } } myPropComponent.setForeground(Color.black); myPropComponent.hideBorder(); myPropComponent.setOpaque(false); MessageTable mm = (MessageTable) table; String expr = getAggregateFunction(column); if (expr == null) { setupProp(mm, new Operand(null, "String", null), column); return myPropComponent; } else { try { Operand o = myComponent.getContext().evaluate(expr, myComponent, null, mm.getMessage()); if (o == null) { setText("null"); return this; } else { setupProp(mm, o, column); aggregateValueMap.put(new Integer(column), o); myPropComponent.hideBorder(); return myPropComponent; } } catch (Exception ex) { logger.error("Error detected", ex); setForeground(Color.red); setText("error"); return this; } } }