Seam+dataTable+methods with parameter
.:lexx:. Mar 12, 2007 11:25 AMDoes anybody knows how to implement dataTable with columns which values evaluated in method with parameters:
<ice:dataTable id="foundPackets" value="#{foundPackets}" var="packet" columnClasses="basicColumn" rowClasses="basicTableRow1, basicTableRow2"> <ice:column> <f:facet name="header">Time</f:facet> <ice:outputText value="#{packet.date}"> <f:convertDateTime pattern="#{uiConstants.defaultPattern}"/> </ice:outputText> </ice:column> <ice:column> <f:facet name="header">SMSC</f:facet> <ice:outputText value="#{deliveryStatusHelper.isDeliveredToSmsc(packet.deliveries)}"/> </ice:column> </ice:dataTable>
DeliveryStatusHelper.java:
@Scope(ScopeType.SESSION) @Name("deliveryStatusHelper") public class DeliveryStatusHelper { public boolean isDeliveredToSmsc(DeliveryEvent[] deliveryEvents) { for (DeliveryEvent deliveryEvent : deliveryEvents) { if (deliveryEvent.getStatus() == DeliveryStatus.SMSC.getCode()){ return true; } } return false; }
The main problem is inoperability of construction "#{deliveryStatusHelper.isDeliveredToSmsc(packet.deliveries)}".
Also i tried to use this construction:
<h:outputText value="Yes" rendered="#{deliveryStatusHelper.isDeliveredToSmsc(packet.deliveries)}"/>
But this one ends with parse exception:
Caused by: javax.el.ELException: Error Parsing: #{deliveryStatusHelper.isDeliveredToSmsc(packet.deliveries)} at com.sun.el.lang.ExpressionBuilder.createNodeInternal(ExpressionBuilder.java:140) at com.sun.el.lang.ExpressionBuilder.build(ExpressionBuilder.java:157) at com.sun.el.lang.ExpressionBuilder.createValueExpression(ExpressionBuilder.java:201) at com.sun.el.ExpressionFactoryImpl.createValueExpression(ExpressionFactoryImpl.java:74) at org.jboss.seam.ui.facelet.SeamExpressionFactory.createValueExpression(SeamExpressionFactory.java:107) at com.sun.facelets.tag.TagAttribute.getValueExpression(TagAttribute.java:256) ... 71 more Caused by: com.sun.el.parser.ParseException: Encountered "(" at line 1, column 41. Was expecting one of: "}" ... "." ... "[" ... ">" ... "gt" ... "<" ... "lt" ... ">=" ... "ge" ... "<=" ... "le" ... "==" ... "eq" ... "!=" ... ...