Yeroc:
Comet support would be a great addition to the web client. Tomcat 6 already supports Comet though of course that’s not a standardized version of the API but that may not be an issue if you’re planning on continuing to bundle Tomcat with Servoy. The current polling solution is inefficient especially since each dialog/window that’s opened seem to do their own polling. Is there any concrete plan to implement a Comet-based solution in an upcoming release? Ideally, there would only be one Comet connection per browser session regardless of how many windows are open.
yes i know that there is some things for that
The http tunnel was first build on that. But we had to rewrite it completely because of so many problems and now the tunnel uses the “old” approach and it is working way better
So currently i am not going to build on that again and will wait until it is more final.
I dont think it is that easy to have 1 connection over all browsers windows/tabs. That will update then all the windows, The client side doesnt know about all the windows, and which window does all the work?
If you close that window then how do others know that there is no Comet connection anymore? That could be very confusing for a user.
Besides all that we have to really look if communications and updates between pages are all always working in all the browsers we have to support.
Yeroc:
Can you give any pointers or describe how we should approach this? So far we have an incomplete solution using the aforementioned web-client-utils plugin to send a Javascript snippet to the browser:
function manipulateFoundSet()
{
// update the foundset…
.
.
.
// force an update on the main window
plugins.webclient.executeClientSideJS(
“if (window.opener) window.opener.triggerAjaxUpdate();”);
}
This only allows us to force an update on the parent browser window unfortunately. Does Servoy web client track all opened windows on the client side anywhere?
No the client doesnt know
You can just right click open in new tab on some stuff.
Or just type in in a new tab another url to your solution.
there are so many ways that there can be tabs or windows
And this is again the same thing as 1 connection. Where to track that opened windows? All windows should know about all others but that will must be synced up then constantly,
or 1 window to track it all but if you close that one then you loose all of them again.
What people should try to do is not use multiply windows… really in an full ajax application you should try to use 1 page that does it all. (with modal dialogs for the dialog stuff)
in the default FF behavior i find opening tabs very annoying because i can have 10 tabs open then my main window is the 4th.
Then if i open a tab the next tab is by default i think 11 so suddenly you have a tab at position 4 and 11 that belongs to each other… if i then at 11 you have to search and search how to get back to 4.
(i dont allow a web client to open a window, it always have to be a tab)
Another tab is really a new application. At least many in the wicket world really want that (so that you can login twice under different names or have different solutions open) but this is hard to reliable track in a browser.