Amidst the popularity of JavaScript-CSS frameworks like Bootstrap and Angular.js, Java developers like myself are still most comfortable with what we know – Java code. Vaadin provides a framework for Java developers to write rich internet applications that are highly interactive while usually not having to write a line of Javascript code. It builds on […]
Getting GWT to work with Servlet 3 Async Requests
For one of our projects, we use a GWT client that needs to be updated in near-real time (< 1 second delay) when something relevant happens on the server. There are multiple ways of doing it, but I tried to get it working with the new Servlet 3 feature: Asynchronous Http Request handling. Read on […]
Test driven development for GWT UI code with asynchronous RPC
In my previous blog post I we saw a test-driven approach to GWT UI code. This was based on moving logic to a Supervising Controller. In this follow-up post we’ll turn our attention to interacting with RPC, and see how this can be tested using EasyMock. This involves some tricks and non-trivial boilerplate code, but […]
Test driven development for GWT UI code
Is a test driven development (TDD) approach possible when creating a GUI using GWT? This post is about how to apply MVC (Model-View-Controller) to organize GWT UI code, with these objectives: a clear separation of the controller logic from presentation and model full testability of the controller logic independent of the (browser or hosted mode) […]
Optimizing startup time for GWT hosted mode
When developing GWT (Google Web Toolkit) applications, the GWT hosted mode is an invaluable tool, as it allows for short development cycles. Whenever you change something in the GWT client code and hit the “Refresh” button it will compile the change, reload the application and show the result of my change almost immediately. In theory, […]
Integrating Spring and GWT
I just completed my first shot at integrating Spring with GWT. You can check it out here Here’s what you do to expose a simple service. 1) Write the remote service, note that the service no longer extends RemoteServiceServlet however HelloService should still implement RemoteService public class HelloServiceImpl implements HelloService { public String sayHello(String name) […]