Is anybody using service performFindList?
That service returns the actual list size (in context as "listSize"), and a possibly smaller list (FastList). The problem is that when this list gets to the ModelForm.java (method getListLimits()), the context value "listSize" is totally ignored, and the list size is gotten from the partial list returned by performFindList. Obviously, this is wrong, since the actual list size IS NOT the size of the partial list! If I am allowed to fix the problem right here, in ModelForm.java, the following questions are moot. I have another question, about service performFind. In Minilang, how do I take the EntityIterator returned by that service, calculate some additional values, and slap on those values into the list elements to be displayed in the UI listings output as an additional column? For eg, I may have a simple logic like "if product name is profane, display a big label VULGAR, else display a small label Mild". I'd want a product listing that has the additional column called "Vulgarity alert". OR... Can I get the Widget Form renderer to look at 2 lists with the same sizes, and simply combine them, like "row 1 of list A with row 1 of list B, and row 2 with row 2..."? If I can somehow massage the EntityIterator from service performFind, I won't have to use performFindList. Or should I just go for freemarker macros in such cases? Thanks. Jonathon |
Hi Jonathon,
Jonathon -- Improov wrote: > Is anybody using service performFindList? > > That service returns the actual list size (in context as "listSize"), > and a possibly smaller list (FastList). The problem is that when this > list gets to the ModelForm.java (method getListLimits()), the context > value "listSize" is totally ignored, and the list size is gotten from > the partial list returned by performFindList. Obviously, this is wrong, > since the actual list size IS NOT the size of the partial list! > If I'm not wrong, some time ago a new attribute has been added (to the <form> element?) to specify a non default field (or value) containing the actual list size... I think you should find it in the xsd file. > If I am allowed to fix the problem right here, in ModelForm.java, the > following questions are moot. > > I have another question, about service performFind. > > In Minilang, how do I take the EntityIterator returned by that service, > calculate some additional values, and slap on those values into the list > elements to be displayed in the UI listings output as an additional > column? For eg, I may have a simple logic like "if product name is > profane, display a big label VULGAR, else display a small label Mild". > I'd want a product listing that has the additional column called > "Vulgarity alert". > I think you can use the <row-actions> section in your form widget definition; it is similar to the <actions> section but the actions in the former are run for each and every row in the list. Jacopo > OR... > > Can I get the Widget Form renderer to look at 2 lists with the same > sizes, and simply combine them, like "row 1 of list A with row 1 of list > B, and row 2 with row 2..."? > > If I can somehow massage the EntityIterator from service performFind, I > won't have to use performFindList. > > Or should I just go for freemarker macros in such cases? > > Thanks. > > Jonathon |
Hi Jacopo,
It works, thanks! > If I'm not wrong, some time ago a new attribute has been added (to the > <form> element?) to specify a non default field (or value) containing > the actual list size... I think you should find it in the xsd file. It's attribute "override-list-size" for the <form> element. Just pump in the value of "listSize" returned by the service "performFindList". > I think you can use the <row-actions> section in your form widget > definition; it is similar to the <actions> section but the actions > in the former are run for each and every row in the list. <row-actions> work. Very clean. Jonathon Jacopo Cappellato wrote: > Hi Jonathon, > > Jonathon -- Improov wrote: >> Is anybody using service performFindList? >> >> That service returns the actual list size (in context as "listSize"), >> and a possibly smaller list (FastList). The problem is that when this >> list gets to the ModelForm.java (method getListLimits()), the context >> value "listSize" is totally ignored, and the list size is gotten from >> the partial list returned by performFindList. Obviously, this is >> wrong, since the actual list size IS NOT the size of the partial list! >> > > If I'm not wrong, some time ago a new attribute has been added (to the > <form> element?) to specify a non default field (or value) containing > the actual list size... I think you should find it in the xsd file. > >> If I am allowed to fix the problem right here, in ModelForm.java, the >> following questions are moot. >> >> I have another question, about service performFind. >> >> In Minilang, how do I take the EntityIterator returned by that >> service, calculate some additional values, and slap on those values >> into the list elements to be displayed in the UI listings output as an >> additional column? For eg, I may have a simple logic like "if product >> name is profane, display a big label VULGAR, else display a small >> label Mild". I'd want a product listing that has the additional column >> called "Vulgarity alert". >> > > I think you can use the <row-actions> section in your form widget > definition; it is similar to the <actions> section but the actions in > the former are run for each and every row in the list. > > Jacopo > >> OR... >> >> Can I get the Widget Form renderer to look at 2 lists with the same >> sizes, and simply combine them, like "row 1 of list A with row 1 of >> list B, and row 2 with row 2..."? >> >> If I can somehow massage the EntityIterator from service performFind, >> I won't have to use performFindList. >> >> Or should I just go for freemarker macros in such cases? >> >> Thanks. >> >> Jonathon > > |
Free forum by Nabble | Edit this page |