I guess it's been discussed a lot recently:
Why not to use XML strings instead of the dreaded entity beans. We can generate XML straight from Oracle and pass it to the web or java client for rendering. Anyone using this approach on their projects?
If you think EJB's are bad for performance, try passing around a DOM object. Not only is the footprint much bigger than the corresponding XML file, an XML document is serialized recursively. Thus, you should likely test your hypothesis pretty extensively before altering your architecture.
entity beans are components/objects, with data, behavior and services provided by the container, security, transaction, etc. you might disagree agree with this, some people just view them as more or less structs, in which case i think they are useless bc the overhead is not worth it. xml is a markup language, just data format. entity beans and xml are completely different things and each has it own purpose.
i wonder why there is so much confusion about this whole thing.
XML is a markup AND a lightweight dataformat. you can indeed pass around XML as a convenient datamarkup. but the point is ejb is entirely different in its very purpose: to provide convenient JAVA objects to manipulate. infact WHY do we need entity beans at all when we have the database itself. infact have we a reason to use entity beans when we have stateful, stateless beans which can as well read from the database and why have ejb at all when we can push the whole logic into a bunch of servlets. i guess here's where u must get back to the funda of things and realize why ejb specification has evolved at all.
infact ejb uses XML extensively precisely because it gives u such flexible format to represent data. but simply to state xml is good replacement for entity beans itself is very funny.