EJB is a major feature of J2ee architecture. Its creation as said by SUN is to facilitate developers for the development of the middleware. To me it seems EJB just makes RMI more difficult as it added a layer over RMI and then developer has to spend a lot of effort on deployment. Because running EJB depends on the EJB engine, you have no control over what you are doing. Some very simple stuff can become very difficult. I would like to know your opinion on this topic? Thanks.
Originally posted by Laojar Chuger: Because running EJB depends on the EJB engine, you have no control over what you are doing. Some very simple stuff can become very difficult.
Hi, (maybe this is off topic for this forum but....) I agree on what you said previous to the above quote but, in my honest opinion, the reliance on the EJB Engine should not be a concern. If you choose a application server that is J2ee certified and adheres to the specs you should have the comfort and peace of mind that you know what functionality to expect and can build accordingly. I think that the EJB technologies are incredible in the way they approach the separation of your tiers and in the ability you have to easily plug in new functionality to a site. Just add a new session bean and use your entity beans.. voila! Now if you are really worried about the control provided by your EJB Engine (application server or A/S) there are always proprietary alternatives, but, I think these have their own problems associated with them. In my past experience they actually have more. Companies that supply products to you can shift markets, drop products or even just disappear like the wind. Where do you go if this happens? Continue supporting your out of date unsupported platform, or, re-write and deploy on a new one. Using an A/S alteernative that implements EJB's gives you choice. In my professional world, choice is what will keep me alive if one of my suppliers starts feeling rocky ground, AND, the associated competition keeps everyone honest. I feel that this will elevate the quality of the product in the long run. I notice we haven't even discussed the EJB technology itself (which I have alot of confidence in) but that is also another post in this forum.
Good point! Any thing involving transaction creates greater complexity and I guess EJB engine is built really for this kind of situations. However, most time the application may not be that complex and it is easy to abuse the EJB engine. That's my concern.