He hecho una solución híbrida con Javascript.
<rich:column styleClass="expired" rendered="#{documento.expired}">
<f:facet name="header">
Da evadere entro
</f:facet>
<h:outputText value="#{documento.timeAgoInWords}" />
</rich:column>
y luego en Javascript (con prototipo que se incluye en RichFaces)
<script type="text/javascript">
function colorize() {
$$('td.expired').each(function(el) {
el.up().addClassName('expired');
});
}
Event.observe(window, 'load', function() {
colorize();
});
</script>
edición:
este agregar una clase css condicional con renderizada:
<rich:column styleClass="expired" rendered="#{documento.expired}">
con javascript I loop en cada td con clase css expirada $$('td.expired')
y agregue el la misma clase de CSS al nodo superior tr con el.up()
.
Event.observe(window, 'load', function() {});
esto simplemente ejecuta la función cuando el DOM está completamente cargado.
Sí, esta es una buena solución, pero desafortunadamente rompe la faceta del encabezado. ¿Algunas ideas? –
Ya intenté poner el encabezado en un grupo de columnas, pero no se aplica el aspecto de las caras enriquecidas. ¿Alguna otra idea? Muchas gracias :) –
Como nota al margen, también puede ocultar las columnas de esta manera mediante el uso de redered. –
WhyNotHugo