SimpleUnitOfWorkInterceptor disappeared in 0.7-SNAPSHOT?

What happend to the SimpleUnitOfWorkInterceptor in 0.7?

Finally I got lost switching from 0.6 to 0.7 as the spring
configuration changed a lot...

I don't get the point what the Axon namespace is really good for. It
seems to be much more complicated than before!?

Why don't you simply use JSR-330 annotations (@Inject, @Named) within
Axon? That way it's possible to keep the Axon Core free from Spring
dependencies and greatly reduces the configuraion overhead.

Getting rid of the spring dependency is still on the roadmap. But changing the annotations should be an easy first step. I’ll try to pick it up as soon as possible.

Why do you think namespace support is complicated? I am always looking for improvements. Where did you get lost?
One thing that might be an issue is the snapshotter configuration. You can configure the snapshot trigger on your repository (setEventProcessors, which is probably not the easiest name for it). So no more triggeringEventStore.

The SimpleUnitOfWorkInterceptor is no longer among us. You don’t need it anymore, as the commandbus has it implicitly. You can safely remove it from the context.

Why do you think namespace support is complicated?

I expect Java developers to have at least basic Spring knowledge
today. Looking at an Axon "application-context.xml" in 0.6 I was able
to connect everything with that knowledge. When I look at the 0.7
configuration there is now an additional level of complexity. I need
now to learn about the Axon namespace just to do the same thing. So
what is actually the benefit?

I guess having JSR-330 annotations inside the Axon Core almost removes
the need for having many entries inside an "application-context.xml".

Where did you get lost?

I simply wasn't able to migrate from 0.6 to 0.7 in a fair amount of
time - So I finally removed snapshotting for now:
http://code.google.com/p/axon-auction-example/source/browse/trunk/auction-command-server/src/main/resources/application-context.xml

Gee! I know why I used the stable 0.6 before :wink:

Ok, so then it’s a matter of taste. Personally, I prefer namespaces (mostly because you can give expressive names to groups of properties and constructor arguments). But don’t forget that the use of the namespace is a choice. You can even combine it, if you like.

It’s either:

or:

<axon:event-sourcing-repository id=“userRepository”
aggregate-type=“org.fuin.auction.command.server.User”
event-bus=“eventBus” event-store=“eventStore”>

Oh, and EventBus and EventStore are already optional. They are autowired.

Cheers,

Allard

Ok, so then it's a matter of taste.

Yeah, sounds like that :wink:

Maybe you can help adding snapshotting functionality with Pure Spring
configuration?

http://code.google.com/p/axon-auction-example/source/browse/trunk/auction-command-server/src/main/resources/application-context.xml

I added an extra setter for a snapshotter trigger. It’s in the current snapshot version (just tell maven to force an update).

Cheers,

Allard