I checked the context file, and everything looked absolutely fine. I did notice that you are using Axon 0.6. Do you prefer to work on a stable release? The 0.7 version has some nice features that might make things easier. Spring Namespace support, for example.
Anyway, I checked the command handler too. That’s where I discovered something. You should call repository.add(aggregate) to let the repository know that you have created a new aggregate.
User user = new User(…);
The API of you command handler gives me the impression that you have the intent to return a result for most -if not all- the command. You should always try to model the process in such a way that you can use fire-and-forget commands. A good command never fails.