Thread: [Tapfx-users] Re: TapFX Filtering Table Example
Status: Beta
Brought to you by:
andyhot
From: Louis M. <lou...@gm...> - 2005-09-27 12:54:58
|
Cool, thank you, understand it all completely now... I am actually looking at having a more complex filter table component, i.e. I want a input field for more than one column, and allow the user to filter on multiple columns. I.e. Have a input field for user name and then a drop down for the Department column, so you can search for users in a specific department. There must be a way to not have to code these input fields for each of my pages and be able to have it all in a single table component. We are going to have a couple of pages that we would like to have this kind of functionality on. In any case, this might be the time for me to stop being lazy and to program my first complex Tapestry component... Thanks for the quick reply! Louis Meiring Andreas Andreou wrote: > ok, let's say we have a ShowClubs page... > > In the html, I use: > <table jwcid="clubTable@FilteringTable" width="90%" > source="ognl:getClubs()" useFilter="ognl:true" > columns="code, name" /> > > and in the .java: > public void pageBeginRender(PageEvent event) > { > String filter = > ((FilteringTable)getComponent("clubTable")).getFilter(); > if (filter==null) > clubs = clubDao.fetchAllClubs(); > else > clubs = clubDao.fetchClubsWithFilter(filter); } > > public List getClubs() > { > return clubs; > } > > So, as you can see, FilteringTable does NOT filter the displayed > records for you. You have to do the dirty job. > It just informs you of the filter string. > > Hope this helps, > Andreas Andreou > > Louis Meiring wrote: > >> Hi Andreas Andreou, >> >> I just compiled your TapFX component library for Tapestry because I >> want to try to use the Filtering Table component. Have you got some >> example code that I could maybe have a look at? >> >> Thanks! >> Louis Meiring >> > |
From: Andreas A. <an...@di...> - 2005-09-27 14:25:42
|
The functionality you describe is really useful. If you find a generic way to implement it, I would be really glad if you could contribute the code back to the community. What I usually do, is treat the filter string as an intelligent input, i.e. allow the user to input (in the same filter) more than one keywords (space separated), the first for the firstname, the second for the lastname, the third for the portalcode, e.t.c. Something like a search engine could provide. I was also thinking of allowing filters such as "name:lou lastname:meir", but in my case this was overkill. Have fun, Andreas Andreou Louis Meiring wrote: > Cool, thank you, understand it all completely now... > > I am actually looking at having a more complex filter table component, > i.e. I want a input field for more than one column, and allow the user > to filter on multiple columns. I.e. Have a input field for user name > and then a drop down for the Department column, so you can search for > users in a specific department. There must be a way to not have to > code these input fields for each of my pages and be able to have it > all in a single table component. We are going to have a couple of > pages that we would like to have this kind of functionality on. > > In any case, this might be the time for me to stop being lazy and to > program my first complex Tapestry component... > > Thanks for the quick reply! > Louis Meiring > > Andreas Andreou wrote: > >> ok, let's say we have a ShowClubs page... >> >> In the html, I use: >> <table jwcid="clubTable@FilteringTable" width="90%" >> source="ognl:getClubs()" useFilter="ognl:true" >> columns="code, name" /> >> >> and in the .java: >> public void pageBeginRender(PageEvent event) >> { >> String filter = >> ((FilteringTable)getComponent("clubTable")).getFilter(); >> if (filter==null) >> clubs = clubDao.fetchAllClubs(); >> else >> clubs = clubDao.fetchClubsWithFilter(filter); } >> >> public List getClubs() >> { >> return clubs; >> } >> >> So, as you can see, FilteringTable does NOT filter the displayed >> records for you. You have to do the dirty job. >> It just informs you of the filter string. >> >> Hope this helps, >> Andreas Andreou >> >> Louis Meiring wrote: >> >>> Hi Andreas Andreou, >>> >>> I just compiled your TapFX component library for Tapestry because I >>> want to try to use the Filtering Table component. Have you got some >>> example code that I could maybe have a look at? >>> >>> Thanks! >>> Louis Meiring >>> >> > > > > ------------------------------------------------------- > SF.Net email is sponsored by: > Tame your development challenges with Apache's Geronimo App Server. > Download it for free - -and be entered to win a 42" plasma tv or your > very > own Sony(tm)PSP. Click here to play: http://sourceforge.net/geronimo.php > _______________________________________________ > Tapfx-users mailing list > Tap...@li... > https://lists.sourceforge.net/lists/listinfo/tapfx-users > |
From: Louis M. <lou...@gm...> - 2005-09-27 15:25:03
|
I've got a lot more to learn about Tapestry components though, so this might take me a little while (if it is possible at all). Will definitely contribute the code if I get something like this going. I will do some research to see if it will be possible to create a component like this and let you know. Thanks for your help! Louis Andreas Andreou wrote: > The functionality you describe is really useful. > If you find a generic way to implement it, > I would be really glad if you could contribute the code > back to the community. > > What I usually do, is treat the filter string as an intelligent input, > i.e. allow the user to input (in the same filter) more than one > keywords (space separated), > the first for the firstname, the second for the lastname, the third > for the portalcode, e.t.c. > Something like a search engine could provide. > I was also thinking of allowing filters such as > "name:lou lastname:meir", but in my case this was overkill. > > Have fun, > Andreas Andreou > > > > Louis Meiring wrote: > >> Cool, thank you, understand it all completely now... >> >> I am actually looking at having a more complex filter table >> component, i.e. I want a input field for more than one column, and >> allow the user to filter on multiple columns. I.e. Have a input field >> for user name and then a drop down for the Department column, so you >> can search for users in a specific department. There must be a way to >> not have to code these input fields for each of my pages and be able >> to have it all in a single table component. We are going to have a >> couple of pages that we would like to have this kind of functionality >> on. >> >> In any case, this might be the time for me to stop being lazy and to >> program my first complex Tapestry component... >> >> Thanks for the quick reply! >> Louis Meiring >> >> Andreas Andreou wrote: >> >>> ok, let's say we have a ShowClubs page... >>> >>> In the html, I use: >>> <table jwcid="clubTable@FilteringTable" width="90%" >>> source="ognl:getClubs()" useFilter="ognl:true" >>> columns="code, name" /> >>> >>> and in the .java: >>> public void pageBeginRender(PageEvent event) >>> { >>> String filter = >>> ((FilteringTable)getComponent("clubTable")).getFilter(); >>> if (filter==null) >>> clubs = clubDao.fetchAllClubs(); >>> else >>> clubs = clubDao.fetchClubsWithFilter(filter); } >>> >>> public List getClubs() >>> { >>> return clubs; >>> } >>> >>> So, as you can see, FilteringTable does NOT filter the displayed >>> records for you. You have to do the dirty job. >>> It just informs you of the filter string. >>> >>> Hope this helps, >>> Andreas Andreou >>> >>> Louis Meiring wrote: >>> >>>> Hi Andreas Andreou, >>>> >>>> I just compiled your TapFX component library for Tapestry because I >>>> want to try to use the Filtering Table component. Have you got some >>>> example code that I could maybe have a look at? >>>> >>>> Thanks! >>>> Louis Meiring >>>> >>> >> >> >> >> ------------------------------------------------------- >> SF.Net email is sponsored by: >> Tame your development challenges with Apache's Geronimo App Server. >> Download it for free - -and be entered to win a 42" plasma tv or your >> very >> own Sony(tm)PSP. Click here to play: >> http://sourceforge.net/geronimo.php >> _______________________________________________ >> Tapfx-users mailing list >> Tap...@li... >> https://lists.sourceforge.net/lists/listinfo/tapfx-users >> > |