by my understanding, you have to mark all methods that (may) change the state of an object. How about methods that change the state of multiple objects of different classes? If one of these calls fails, I want to roll the whole thing back. From what I gather from the documentation, this isn't covered by the current stuff. Has anyone given any thought about how to solve this? cheers Rob