Refresh UI / Reload data

Hi community,

I am new using Vaadin, and right now I am facing this problem:

I have a portlet A that displays information that is recorded in a portlet B, and the portlet A has a link to the portlet B. If go from the portlet A to the portlet B and make a change in the portlet B when I return to the portlet A the update is not reflected, not even after refreshing the page, it is only reflected if I logout and then login again.

Does anyone know how can I do that when I return to the portlet A the new information is loaded?
I know that if I add ?restartApplication to the URL and reload the page it shows the changes and the session is nos lost. Do you know which method is internally executed when this parameter is sent?

I’m using Vaadin 7.3.0 with Liferay 6.2

Thank you very much!


Vaadin IPC for Liferay
add-on might help you out, it’s specifically meant for communication between portlets.

Indeed - Vaadin IPC for Liferay add-on passes messages via JavaScript on the client side to avoid the page reloads that portlet standard IPC would cause in many cases. As the data that is sent via the add-on goes over the network, you might want to just pass e.g. some hash that is used as a key for transferring the actual data between portlet instances on the server. The IPC would also trigger a client to server request that fetches updates made in the processing of the message passed.

The parameter ?restartApplication does too much for a typical refresh, including destroying the whole UI instance. Instead, you might want to just recreate a certain part of the UI if you can’t refresh more specific parts of it.