spring-mvp Vaadin addon

After my first successfully completed Vaadin project I knew: Vaadin is a very good technology but the provided possibilities to create event driven applications were too limited. Coming from Adobe Flex using the Cairngorm project I knew there should be more possibilities for dispatching events, register listeners and so on.

The next project at work was a complex Vaadin application and we decided to create the first version of a Model View Presenter (MVP) framwork. We planed to use the Spring Framework, so it was logical to combine our MPV framework with Spring.

In the project we learned a lot about structuring our Vaadin UI code and developed some best pratices. During the project we recognized: our MVP idea is quite good, it works well and it should be further improved.

So I decided to improve the Model View Presenter framework in my leisure time and the result is the spring-mvp Vaadini addon which is publicly available in the Vaadin addon directory.

The basic ideas of spring-mvp are simple:

  • dispatch and listen for events to have loosly coupled UI components
  • separate the front-end into View, Presenter and UIService (models were already there).

The demonstration application for spring-mvp is a shopping-cart application. Each shopping-cart can have several articles in it. The special feature of the demonstration application is all application instances (which means each application in separate browser) gets informed when a shopping-cart or an articles was edited and the changes are shown immediately in all browsers. Try it out!

The detailed documentation describes the functionality of spring-mvp and how to use it. The source code for the complete spring-mvp Vaadin addon is available in a Git repository.

Download the documentation as PDF: spring-mvp 1.0 manual

Advertisements

2 thoughts on “spring-mvp Vaadin addon

  1. Exactly what I was looking for as I come from flex/cairngorm world. Have you tried it with vaadin 7? Will it not work?

    1. Hi Harry,

      Vaadin 7.1 has a new push mechanism which is currently not supported by spring-mvp. I’ve not had the time yet to update spring-mvp so it supports Vaadin 7.1.

      But that definately is an interesting task 😉

      Regards,
      Christoph

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s