One of the weird aspects of event sourcing is, that domain objects
don't contain all attributes that belong to the object.
Example:
http://code.google.com/p/axon-auction-example/source/browse/trunk/auction-command-server/src/main/java/org/fuin/auction/command/server/domain/Category.java
(The category has a name that is only visible in the constructor
because none of the methods needs it - It's only necessary for the
queries)
Is this really a good idea in respect to DDD? At the moment there is
no place in the code where I can see what is really in the domain
object. This is at best confusing...
I'm thinking about an abstract base class for such objects that has
all attributes and protected setter/getter for access by the concrete
subclass. This abstract base class could also be automatically
generated from a model (like UML).
What do you think?
@Allard:
Could you add a link from the Axon project page to the example
project?