Board index JavaServer Faces General Components errors /Primefaces 2.1-RC1, 2.0.3-SNAPSHOT

Components errors /Primefaces 2.1-RC1, 2.0.3-SNAPSHOT

Components, Ajax Framework, Utilities and More.


Posts: 4
Hi guys!

Our team is starting to use primefaces...and first impression is very good. At present we made sample application (approximately 20 views) for our internal company needs. We faced with the problems using some kind of components:

1. Datatable with dynamic="true" doesn't work correctly on 'sortBy'\'filterBy' fields: 0 (zero) values appear and a lot of columns are absolutely empty. From time to time 'Data error.' appears:( if dynamic option is disable ---> all work fine...but it doesn't cover our needs...
xhtml:
   <p:dataTable var="perform" id="dataTableEntitiesId" value="#{reportJobPerformanceListBean.jobPerformanceEntries}" paginator="true" update="jobReportEntityDisplay"    rows="10" dynamic="true" lazy="true" >

            <p:column sortBy="#{perform.period}">
               <f:facet name="header">
                  <h:outputText value="Period"  style="font-weight:bold"/>
               </f:facet>
               <h:outputText value="#{perform.period}">
                  <f:convertDateTime pattern="dd/MM/yyyy HH:mm" />
               </h:outputText>
            </p:column>

            <p:column>
               <f:facet name="header">
                  <h:outputText value="Operation time" style="font-weight:bold"/>
               </f:facet>
               <h:outputText value="#{perform.delta}"/>
            </p:column>

......               
            <p:column filterBy="#{perform.status}">
               <f:facet name="header">
                  <h:outputText value="Reason" style="font-weight:bold;"/>
               </f:facet>
               
   <h:outputText value="#{perform.status}" rendered="#{perform.jobStatusRunning}" style="color: green; font-weight:bold"/>
<h:outputText value="#{perform.status}" rendered="#{perform.jobStatusFailed}" style="color: red; font-weight:bold"  title="#perform.exception}"/>               
               <h:outputText value="#{perform.status}" rendered="#{perform.jobStatusCompleted}" style="color: blue; font-weight:bold"/>

            </p:column>   

</p:dataTable>


bean:
public class <ClassName> {
   
   private static final Log          log = LogFactory.getLog(<ClassName>.class);

   private List<JobStatusReportEntry>   jobPerformanceEntries;
   
....

public class JobStatusReportEntry{

   private static final String          DATE_FORMAT_PATTERN    = "yy.MM.dd HH:mm";
   static SimpleDateFormat          dateFormatter          = new SimpleDateFormat(DATE_FORMAT_PATTERN);
   
   private UUID jobId;
   private String jobName;
   private String jobGroup;
   private Date startDate;
   private Date stopDate;
   private JobStatus reason;
   private long delta;
   private Exception exception;

/*
as you can see, entity has 'run-time' fields which has no appropriate fields in entity class.
All that stuff works correctly by the reason getting entity fields value uses reflection with 'get' prefix.
*/
   
[b]   public String getPeriod(){
      if ( startDate != null && stopDate != null )
         return dateFormatter.format(startDate) + " - " + dateFormatter.format(stopDate);
      else
         return "";
   }[/b]
...


2.Export tool (p:dataExporter) doesn't export filtered data. It generates the whole table again..and again.

3. Layout component doesn't work correctly in IE6, but works good in FireFox ;). When mouse is on "Option two" the next <p:submenu label="Next list"> option lost its style. Looks like style dancing...;)
xtml:

<p:layoutUnit position="left" width="200" h:header="Management" ...>
           <p:menu> 
               <p:submenu label="List"> 
                   <p:menuitem value="Option one" url="/UI/model/....jsf" icon="/UI/design/....png" ajax="false"/> 
                   <p:menuitem value="Option two" url="/UI/model/....jsf" icon="/UI/design/.....png" ajax="false"/>
               </p:submenu> 
   <p:submenu label="Next list">
........
        <ui:insert name="left"></ui:insert>
</p:layoutUnit>



Thank you in advance ;) for any solution\thought how we can repair that!


Posts: 15107
Location: Cybertron

Hi,

Welcome to PrimeFaces

1) This will be fixed very soon in upcoming datatable enhancements.
2) Last time I've tried exporting filtered data it worked, need to double check.
3) Layout is not fully supported on IE6.
PrimeFaces Lead


Posts: 4
Thank you for quick reply!

1) Just give a hope...when will it be? Our prj needs to meet deadline and we have to make a decision of datatable mode we're going to use.
2) What datatable mode did you use? Is that dynamic? Or it doesn't depends on that?
3) Strange! It works correctly on your showcase view, but our doesn't. Will investigate ;)

BTW: we didn't find the proper way how to update single datatable culumn. Only this approach works:

            <p:column sortBy="#{object.status}">
               <f:facet name="header">
                  <h:outputText value="Status" style="font-weight:bold"/>
               </f:facet>
               <p:poll id="pol" interval="10" update="statusRefresh"/>
               
               <p:panel id="statusRefresh" style="text-align: center;">            
                  <h:outputText value="#{object.status}" rendered="#{object.jobStatusRunning}" style="color: green; font-weight:bold"/>
                  <h:outputText value="#{object.status}" rendered="#{object.jobStatusFailed}" style="color: red; font-weight:bold"/>
                  <h:outputText value="#{object.status}" rendered="#{object.jobStatusCompleted}" style="color: blue; font-weight:bold"/>
               </p:panel>            
            </p:column>


but it looks ugly: panel has fixed min height and datatable row has the same value too.

Thank you again!


Posts: 4
The 3rd problem has been resolved: just specify for <p:menu > width less then left layout width ;)


Return to General