I don't use the display tags so couldn't tell you.  I simply define by bean
using the struts bean:define tag and then access my bean's properties using
the bean:write method or logic taglibs.  For example, my table contains a
field called item_number.  I access it like as follows:

<bean:define id="results" name="<%=Constants.RESULT_KEY%>" scope="request"/>
<logic:iterate id="record" name="results" property="rows">
  <logic:empty name="record" property="item_number">
    Your item number wasn't provided.
  </logic:empty>
  <logic:notEmpty name="record" property="item_number">
    <bean:write name="record" property="item_number"/>
  </logic:notEmpty>
</logic:iterate>

Does this make sense?
Chris

-----Original Message-----
From: Rajat Pandit, Gurgaon [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, June 15, 2004 2:49 AM
To: 'Struts Users Mailing List'
Subject: RE: RowSetDynaClass


Hey Chris,
Thanks a lot for the detailed information. I have just one more issue, I
have used the RowSetDynaClass (beanutils.jar) and I had this issue where I
couldn't control the position of the column numbers as in the 2 column in
the sql could be anywhere in the resultset returned. I was passing the
collection object back to the display tag. Maybe it internally stores the
metadata information in a Map, or is it something wrong with my
understanding. Do let me know if you have had any such issues before?
Regards rajat

-----Original Message-----
From: CRANFORD, CHRIS [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, June 15, 2004 11:46 AM
To: 'Struts Users Mailing List'
Subject: RE: RowSetDynaClass


The PagedTableAction class I'm using don't do any client-side or JVM caching
because the data could change relatively quickly depending on the nature of
our business.  Thus, for us, letting the database handle the "subset" rownum
limits works well and is very efficient.  Right now I can return any subset
of data from a table that contains over 75000 records within < 2 seconds ..
And that's on pagesize ~ 100/150 or so.

Take care,
chris

-----Original Message-----
From: Rajat Pandit, Gurgaon [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, June 15, 2004 2:10 AM
To: 'Struts Users Mailing List'
Subject: RE: RowSetDynaClass


Hey navjot,
Thanks for the inputs(any pointers to the documentations (URL) would again
be of great help) I have been pretty happy using the display tag, for small
record sets (about 12000 or so) but I needed something more in case I needed
to customize the pagination stuff. Like caching stuff etc. 
Any pointers?
Rajat
(OT (only for navjot) ps: any clue where amit malhotra is these days?)


-----Original Message-----
From: Navjot Singh [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, June 15, 2004 11:38 AM
To: Struts Users Mailing List
Subject: Re: RowSetDynaClass

if that was really a problem for you, then there could any/both of 2 
reasons.

1. You never used ValueListHandler pattern.
2. You never had used any pager taglib.

and Chris, you could also look into *sql* JSTL that can help you doing 
what you want. And probabaly i recommend using this only for quick 
reports generation.

<navjot/>


Rajat Pandit, Gurgaon wrote:

> Hey Chris,
> This seems like a pretty neat solution you have out here, could please
> explain this, as pagination stuff is kind of the most complicated 
> things that I have to deal with and I see my self coding the same 
> thing again and again over a period of time. I would really appreciate 
> your time and effort. Thanks in adv.
> rajat
> 
> -----Original Message-----
> From: CRANFORD, CHRIS [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, June 15, 2004 11:17 AM
> To: 'Struts Users Mailing List'
> Subject: RE: RowSetDynaClass
> 
> Found the answer ;-) ... Avoid the <c:...> tags all together and stick
with
> the standard struts tags.  The following worked:
> 
> <logic:iterate id="row" name="results" property="rows" scope="request"
> indexId="rowid">
>   <bean:write name="row" property="item_id" /> - <bean:write 
> name="row" property="item_product_number"/> </logic:iterate>
> 
> Now have a fast, efficient paging mechanism that permits me to pass in
> a database connection object, the sql query to execute, starting page 
> # and size and it handles the rest by populating itself from the 
> database,
closing
> the resultset when finished and leaves the presentation part up to my
> JSP
as
> above!
> 
> Gotta love struts!
> Chris
> 
> -----Original Message-----
> From: CRANFORD, CHRIS [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, June 15, 2004 12:35 AM
> To: '[EMAIL PROTECTED]'
> Subject: RowSetDynaClass
> 
> 
> I am storing a RowSetDynaClass property in my java class and I have
> implemented a method on my class as follows:
> 
> public Collection getRows() {
>   return((Collection)rsdc.getRows());
> }
> 
> In my action, I store my custom class object reference as follows:
>   request.setAttribute("results", myResultsObj);
> 
> Then in my jsp, I do the following:
>   <bean:define scope="request" id="data" name="results" property="rows" />
>   <c:forEach var="row" items="${data}" varStatus="rowid">
>     <c:out value="${rowid.count}"/>. <c:out value="${row.item_id}" />
> - <c:out value="${row.item_product_number}" />
>   </c:forEach>
> 
> I get the following error:
> [ServletException in:/pages/test-body.jsp]
> An error occurred while evaluating custom action attribute "value"
> with value "${row.item_id}": Unable to find a value for "item_id" in 
> object of class "org.apache.commons.beanutils.BasicDynaBean" using 
> operator "."
(null)
> 
> Can someone tell me what I am doing wrong here and how I can do this
> properly to get it to work?
> 
> _______________________________________________________
> Chris Cranford
> Programmer/Developer
> SETECH Inc. & Companies
> 6302 Fairview Rd, Suite 201
> Charlotte, NC  28210
> Phone: (704) 362-9423, Fax: (704) 362-9409, Mobile: (704) 650-1042
> Email: [EMAIL PROTECTED]
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> .
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to