In this post we focus on getting the task based user interface. We have the basic building blocks in the application, but the screens are a bit stupid. How many applications would you create where you have to manually copy the identifier of a contact to an address when you want to register an address for this contact. Well in the current version of the application this is what you really have to do.
What are the tasks that we focus on right now:
- Create a new contact
- Remove a contact
- Change the name of a contact
- Register an address of a certain type for a specific contact
- Remove an address from a contact
But before we step into creating the front-end, we install some plugins that I discussed in previous posts.
Continue reading Use Grails and Axon to create a CQRS application (part II)
Some people have asked be what I was working on lately, since they didn’t see any blogs from me the last months. Well, my life has been heavily focused on the investigation of all the capabilities of a very simple pattern: CQRS. As I unleashed its power on a project, I noticed that most of it is quite generic. That was my trigger to build the Axon Framework, a CQRS Framework for Java.
Read on to find out more…
Continue reading What I have been doing lately – CQRS, CQRS and Axon
I have blogged before about the flex client I have created for the Axon framework addressbook sample project. If you did not read it before and want to learn more about the parsley framework, check this blog.
In this blog item I am describing changes based on a new feature made available in Axon. Allard has created support for a CommandBus and command handlers. Basic idea is that you dispatch items on the bus, and a registeredhandler picks it up and handles it. This makes the command query separation also more clear on the flex side of the application.
Continue reading Attaching flex to Axon using the new Axon CommandBus
Allard has been working on a new framework to make it easier to create a CQRS application. CQRS is short for Command Query Responsibility Segregation. An architecture that separates data sources for storing state and querying data. The query datasource should be easy to use when creating screens. The framework Allard created is the Axon Framework. This framework makes it a lot easier to use commands, events, event sourcing. If these terms are not known to you, I suggest you start reading the reference manual that comes with axon.
What does grails do in this picture. Isn’t grails about rapid application creation? Well, yes. It is a good platform to rapidly create web applications using the groovy language and still be able to use existing libraries. Personally I really like the Gorm library of grails. I think that gorm would be an excellent choice to wrap the query datasource. Of course the gsp technology and the groovy language are nice to have when working with the web applications as well.
In this blog post I’ll discuss the integration between grails and axon. How can we create an application with grails that makes use of Axon to implement CQRS. I’ll discuss the way to create commands and send these to axon. I’ll also discuss responding to events coming from axon. First I have to show some aspects of a grails project that you need to know before you can use Axon. I’ll try to take you with me when I take the steps to create a good integration between Axon and Grails.
Continue reading Use Grails and Axon to create a CQRS application (part I)
I have big plans with groovy. After playing around with grails and doing some groovy scripting I was sure. I want more groovy. To be able to do more with groovy, I needed to learn more about groovy. One way to do this is to start reading and experimenting. This blog post discusses a few experiments as well as some of the learning sources.
Continue reading Doing more with groovy
The last weeks or maybe even months, I have spent time getting to understand the Axon Framework created by Allard. Axon is a framework that can help developers created a scalable and maintainable application based on Command Query Responsibility Segregation (CQRS) principles. Each morning Allard and I discussed the framework and the sample we wanted to have. Since I know my way around flex and Axon makes heavily use of events, I decided to create a flex client that could demonstrate some cool features of the Axon framework.
This post is mainly about flex and Parsley. We will go into depth of the architecture of the client and how to talk to the server. I will describe the communication with the application that makes use of the axon framework, but I will not go into a lot of details. If you want more information about the Axon Framework I suggest you go to the website http://www.axonframework.org. There is good documentation available in the reference manual. If you want to learn about flex and the Parsley framework in general, please read on.
Continue reading Creating a sample for axon using flex and parsley
Last week, I published the 0.4 release of the Axon Framework. Axon helps developers build high performance, scalable and extensible applications using the CQRS pattern. The 0.4 release is a major step towards 1.0, and includes transactional event handling, high-performance caching repositories and easy configuration of event sourcing support. Furthermore, we have also built a demo application that uses Flex to get real-time updates pushed from the server.
Read on to find out more.
Continue reading Axon Framework – the CQRS framework for Java – version 0.4 released
In March 2008 I started experimenting with flex and java integration. I wrote a lot of blog posts since than and even published an article on adobe.com. For most of my blog items I used a sample that is available on google code called books-overview. During the years the sample improved a lot. By now the sample consists of Mate, BlazeDS, Spring BlazeDS and a lot of other spring technologies like spring security.
I was some time a go I had a look at the sample, since than a lot of people keep coming back to it. I still get questions about it. Therefore I decided to upgrade the sample. This blog post is about the upgrade I did which are mainly upgrades in versions of the libraries and the build configuration. Still I think it is worthwhile to have a look at it.
Continue reading Upgrading my books-overview flex, BlazeDS, Spring security application