Ya this approach looks good, thanks kozura. Now my app will look like this.
myapp.html#type=profile&id=100 call server and get data myapp.html#type=profile&id=234 call server and get data myapp.html#type=profile&id=100 get data from cache and refresh panel with this data myapp.html#type=profile&id=234 get data from cache and refresh panel with this data Thanks all, i guess now i can start writing a basic framework around this approach. On Jun 1, 10:25 pm, kozura <[email protected]> wrote: > I recommend you use a single widget with a method to change the data > showing in it (user profile, whatever). You have to be able to > populate it anyway, so that's no extra code. Caching panels is > generally a bad idea and a lot of overhead. > > As for limiting server calls, you can cache the data returned to avoid > having to recall the server. Easiest way is a simple map id->data; > check it when you need an id, if you have it then call the async > callback immediately, otherwise make the RPC call and be sure to stick > the result into the cache map when it gets returned. Of course if the > data is dynamic you probably want some mechanism to know when a > particular piece of data gets changed and needs re-sent.. > > Also you might look at one of the models built on top of GWT which do > this for you in various ways. > > On Jun 1, 2:36 pm, ping2ravi <[email protected]> wrote: > > > > > Thanks Shaffer/Sri, > > I think i will go with GWT, the only thing is that i will have to > > implement History which usually i dont do while writing the > > websites(jsp/html page based). May be thats the reason i thought > > writing history is overhead but i guess this over head will give me > > good webapp/website. > > now with GWT also i have few question like. > > e.g. i am on a user profile (some other user) screen i created a > > panel(grand parent of every widget inside it) say the url is > > myapp.html#type=profile&id=100 > > then i go to another user's profile and url is now > > myapp.html#type=profile&id=234. > > > Question, what is the best approach here. Shall i create a brand new > > that grand panel and fill the data from server or shall i reuse the > > exisitng panel, clean it and then refill the data from server. > > Option 1) If i create always new panel, can i trust GWT that it will > > never go out of memeory or after some time user;s browser wont feel > > that something heavy has been loaded? By using this approach i can > > make sure that if user come to link myapp.html#type=profile&id=100 > > again, i wont go to server and will just display the existing Panel. > > It will be quickest thing on the earth and user may feel better to see > > a page faster then anything. > > > My Server calls will be like > > > myapp.html#type=profile&id=100 call server and get data > > myapp.html#type=profile&id=234 call server and get data > > myapp.html#type=profile&id=100 ======No need to call > > server as one panel already exists which can show profile for user 100 > > myapp.html#type=profile&id=234 ======No need to call > > server as one panel already exists which can show profile for user 234 > > > Probelm which i see in this approach: > > 1) Memory can be a problem in this approach. Exp GWT developer may be > > able to give me some insight here. > > 2) Client view might be bit older then server, but panels can be > > removed from history cache using timers say 1 minute etc. But still > > older. > > > Option 2) Reruse the existing Panel again and again. Basically create > > all main panels which need to have history as singleton(although its > > javascript, but in java write code like that) and reuse the panel and > > whenevr history changes reset all panels/widgets inside it and reload > > the data from Server > > myapp.html#type=profile&id=100 call server and get data > > myapp.html#type=profile&id=234 call server and get data > > myapp.html#type=profile&id=100 call server and get data > > myapp.html#type=profile&id=234 call server and get data > > > In this approach i guesss i will have less problem with memory and > > data will always be latest. But Server calls will be increased.That > > means extra load on server and user's every click(Back and forward) > > will go to server > > > Is there any ther option available here?. If not then out of these > > which one of you think will be better. SOmehow i am inclined to option > > 1 but need to know if memory will be a problem. > > Thanks, > > Ravi. -- You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
