That is because attrStartDate is actually of type VotingBean and not 
actually Date.  Is there a date accessor(get) somewhere inside 
VotingBean?  Does VotingBean have a toString() on it that is printing 
out some date?

José Renato wrote:
> Hi Chris,
>
> Thanks for answering. I did what you mentioned. But I got this error:
>
> .Default (self-tuning)'] 
> org.displaytag.exception.BaseNestableJspTagException 
> (BaseNestableJspTagException.java:99) - Exception: [.LookupUtil] Error 
> looking up
> property "attrStartDate.time" in object type 
> "com.app.persistence.voting.VotingBean". Cause: Unknown property 'time'
> java.lang.NoSuchMethodException: Unknown property 'time' at 
> org.apache.commons.beanutils.PropertyUtilsBean.getSimpleProperty(Prop
> ertyUtilsBean.java:1122)
>         at 
> org.apache.commons.beanutils.PropertyUtils.getSimpleProperty(PropertyUtils.java:408)
>         at org.displaytag.util.LookupUtil.getProperty(LookupUtil.java:271)
>         at 
> org.displaytag.util.LookupUtil.getBeanProperty(LookupUtil.java:129)
>         at org.displaytag.model.RowSorter.compare(RowSorter.java:140)
>         at java.util.Arrays.mergeSort(Arrays.java:1284)
>         at java.util.Arrays.mergeSort(Arrays.java:1295)
>         at java.util.Arrays.mergeSort(Arrays.java:1295)
>         at java.util.Arrays.sort(Arrays.java:1223)
>         at java.util.Collections.sort(Collections.java:159)
>         at 
> org.displaytag.model.TableModel.sortRowList(TableModel.java:451)
>         at 
> org.displaytag.model.TableModel.sortPageList(TableModel.java:473)
>         at org.displaytag.tags.TableTag.doEndTag(TableTag.java:1193)
>         at 
> jsp_servlet._web_45_inf._pages._vote.__votelist._jsp__tag2(__votelist.java:414)
>         at 
> jsp_servlet._web_45_inf._pages._vote.__votelist._jsp__tag1(__votelist.java:295)
>         at 
> jsp_servlet._web_45_inf._pages._vote.__votelist._jsp__tag0(__votelist.java:255)
>         at 
> jsp_servlet._web_45_inf._pages._vote.__votelist._jspService(__votelist.java:223)
>         at weblogic.servlet.jsp.JspBase.service(JspBase.java:34)
>         at 
> weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run 
> (StubSecurityHelper.java:223)
>         at 
> weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecuri
> tyHelper.java:125)
>         at 
> weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
>         at 
> weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
>         at 
> weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:500)
>         at 
> weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:431)
>         at 
> weblogic.servlet.jsp.PageContextImpl.include(PageContextImpl.java:152)
>         at 
> org.apache.struts.tiles.TilesUtilImpl.doInclude(TilesUtilImpl.java:99)
>         at org.apache.struts.tiles.TilesUtil.doInclude(TilesUtil.java:135)
>         at 
> org.apache.struts.taglib.tiles.InsertTag.doInclude(InsertTag.java:760)
>         at 
> org.apache.struts.taglib.tiles.InsertTag$InsertHandler.doEndTag(InsertTag.java:892)
>         at 
> org.apache.struts.taglib.tiles.InsertTag.doEndTag(InsertTag.java:462)
>
>         at 
> jsp_servlet._web_45_inf._pages._layout.__contentlayout._jsp__tag1(__contentlayout.java:155)
>         at 
> jsp_servlet._web_45_inf._pages._layout.__contentlayout._jspService(__contentlayout.java:95)
> <04/07/2007 12h30min14s BRT> <Error> <HTTP> <BEA-101020> 
> <[weblogic.servlet.inte
> [EMAIL PROTECTED] - appName: '_appsdir_sdpClient_war', 
> name: 'sdp
> Client.war', context-path: '/sdpClient'] Servlet failed with Exception
> org.displaytag.exception.RuntimeLookupException: LookupException while 
> trying to
>  fetch property "attrStartDate.time". Cause: Error looking up property 
> "attrStartDate.time" in object type
> "com.app.persistence.voting.VotingBean"..
>         at org.displaytag.model.RowSorter.compare(RowSorter.java:148)
>         at java.util.Arrays.mergeSort(Arrays.java:1284)
>         at java.util.Arrays.mergeSort(Arrays.java:1295)
>         at java.util.Arrays.mergeSort(Arrays.java:1295)
>         at java.util.Arrays.sort(Arrays.java:1223)
>         Truncated. see log file for complete stacktrace
>
> Can I from a String bean parameter access it as "time" like you 
> mentioned? Here is how I did:
>
> <display:column title="Start Date" class="content-table"
>     media="html csv xml excel pdf rtf" style="width=33%" sortable="true"
>     
> sortProperty="attrStartDate.time">${vote.attrStartDate}</display:column>
>
> Any Ideas?
>
> Thanks again,
> José Renato.
>
> Chris Widhelm escreveu:
>>  sortProperty="attrEndDate.time"
>>
>> And remove the comparator.
>>
>> José Renato wrote:
>>   
>>> Hi All,
>>>
>>> I am still stucked here. Can someone give me some clue how can I sort 
>>> a String date column properly?
>>>
>>>
>>> I have a date field retrieved as plain String from database. When I 
>>> try to sort the "date" column it does not work properly. So I extended 
>>> display tag DefaultComparator as follows:
>>>
>>> //...
>>> public class DateStringComparator extends DefaultComparator {
>>>    public int compare(Object dateOne, Object dateTwo) {
>>>        int result = 0;
>>>        final String mask = "dd/MM/yyyy HH:mm:ss";
>>>        try {
>>>            Date d1 = DateWrapper.stringToDate(((String) 
>>> dateOne).trim(), mask);
>>>            result = d1.compareTo(DateWrapper.stringToDate(((String) 
>>> dateTwo)
>>>                    .trim(), mask));
>>>        } catch (ParseException e) { e.priontStackTrace(); }
>>>        return result;
>>>    }
>>> }
>>>
>>> When declaring the String date column I do:
>>>
>>> <display:column title="End Date" class="content-table"
>>>    media="html csv xml excel pdf rtf" style="width=33%"
>>>   comparator="com.app.web.util.DateStringComparator"
>>>   sortable="true" 
>>> sortProperty="attrEndDate">${vote.attrEndDate}</display:column>
>>>
>>> Here comes the problem. The table renders the comparator class name 
>>> "com.app.web.util.DateStringComparator" instead of field value. I am 
>>> using displaytag-1.1.1-2007-6-7.jar.
>>>
>>> What am I missing here dudes? Can someone shed some light here :D
>>>
>>> Thanks a lot,
>>> José Renato.
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>> -------------------------------------------------------------------------
>>> This SF.net email is sponsored by DB2 Express
>>> Download DB2 Express C - the FREE version of DB2 express and take
>>> control of your XML. No limits. Just data. Click to get it now.
>>> http://sourceforge.net/powerbar/db2/
>>> ------------------------------------------------------------------------
>>>
>>> _______________________________________________
>>> displaytag-user mailing list
>>> displaytag-user@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/displaytag-user
>>>   
>>>     
>>
>>   
>
> ------------------------------------------------------------------------
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/
> ------------------------------------------------------------------------
>
> _______________________________________________
> displaytag-user mailing list
> displaytag-user@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/displaytag-user
>   

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
displaytag-user mailing list
displaytag-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/displaytag-user

Reply via email to