Skip to content

Qi4J, EDR, AOP resources

Qi4j

I picked Qi4j because it allows me (or it will allow me once I work out the kinks in integrating it with the specific things I want to use like Struts) to focus on the domain and providing a rich environment for the users. I've done the whole Hibernate/Spring/(WebWork|JSF|Struts) thing in the past and the thing that always bothered me is the redundancy and the amount of time I spent on the Hibernate mappings and wiring up Spring properly.

But what I really liked was the idea of getting rid of the inheritance mess that usually comes with typical OO programming and using Mixins to implement behavior. I see that as probably one of the biggest wins with Qi4j. Then there is the redundancy of defining properties and also having to map them to the backend in a separate metadata file and then also having to worry about constraints and invariants all over the application and not having any reasonable way of putting them all on the entity itself and allowing higher level layers, like the UI, to discover them and provide additional validation controls at that level if that's what they wish.

I could probably go on and on for quite a while. To put it bluntly, I just really really like a lot of the fundamental principles Qi4j is based on.

EDR

Most enterprises have several systems which own parts of a domain object.The data from these systems might be disjoint, as well as overlapping. The data quality and SLA requirements for each system are often of diversified quality. We need a standardized way to handle multi-source domain objects, and to extend the Domain repository to handle the real-world CRUD of todays enterprises.

There seems to be some kind of consensus that one type of SOA services are services that are responsible for the core business objects - and vendors are monitoring and releasing their SOA Data Server products to close the gap. By pioneering the SOA space with EDR, we have gained lots of valuable of experiences of how to solve the Master Data challenges in SOA.

Additional reading

Enterprise Pojos - Link 1 - Link 2

Qi4J - Rickards Blog

EDR - EDR in community wiki - EDR podcast on java.net - EDR-MDS podcast on java.net

Other