Loading...
Important Notice - Forums is archived

To simplify things and help our users to be more productive, we have archived the current forum and focus our efforts on helping developers on Stack Overflow. You can post new questions on Stack Overflow or join our Discord channel.

Product icon
TUTORIAL

Vaadin lets you build secure, UX-first PWAs entirely in Java.
Free ebook & tutorial.

Cache issues for newbie..

Rick F.
1 decade ago Dec 03, 2011 10:42pm
Alexander Pchelintsev
1 decade ago Dec 03, 2011 11:28pm
Rick F.
1 decade ago Dec 05, 2011 5:54am
Basil Bourque
1 decade ago Dec 05, 2011 11:22pm

(a) Besides adding this to your URL:

?restartApplication

you can instead add:

?debug

Then a JavaScript window appears. Click the "R" button for Restart. It appends "restartApplication" to the URL.

Either way you choose to append to the URL, you may want to delete the appended text after using it. Otherwise you may see your app continually restarted, which is not real-world behavior.

This business is annoying, but it's the price we pay for working in the web app world (perverting a document-browser into an interactive app).

(b) Yes, JRebel is virtually required for serious Vaadin work, IMHO. You don't need JRebel when first dabbling with Vaadin, but expect to be quitting and restarting your web server, browser, and Eclipse.

Once installed and working, when you simply save edits to a .java file, wait a moment, and you'll see in the command-line panel of Eclipse a couple of lines explaining that your class was re-loaded. Eclipse+JRebel automatically re-compiles and re-deploys your class "hot", without restarting your web server (Tomcat 7 in my case).

Some people using Vaadin seem to be allergic to using JRebel because it is not open-source. C'est la vie. JRebel does work as advertised, so I recommend it. Also, JRebel does not "muck up" your app or classes, so you can easily deploy to production sans JRebel.

Installing JRebel requires some voodoo, but worked for me by carefully following directions. Remember the last step applies to each new project:

  1. Select the project in Eclipse's Project Explorer.
  2. Context-click to choose JRebel > Generate rebel.xml

JRebel does not eliminate all the hassles. That's just life with web apps.

  • Sometimes, depending on your changes, you'll need to restart your application as described above.
  • Despite using JRebel, when you make certain drastic changes, you'll get a dialog offering to restart the web server.
  • Some web servers, such as Tomcat, save the Session object to disk between restarts. That Session object contains the current objects in the user's Vaadin app execution. When restarting, the Vaadin app will be restored as if it were never quit. So even quitting and restarting your tools does not mean you are truly getting a fresh start.

--Basil Bourque

Last updated on Dec, 5th 2011
Henri Sara
1 decade ago Dec 07, 2011 7:42am
Bobby Bissett
1 decade ago Dec 28, 2011 8:18pm