Im currently working on my SCEA Assignment part 2, and so far I have modelled a classic JSF/EJB/JPA solution. However, as I re-read the Cade Study guide, it seems more and more clear to me that the use of EJBs is not really warranted, as my system is not really transactional, and the only transactions that will have to be handled are those persisting my own JPA Entity classes. The solution I would choose in real life would definately not contain EJBs, but rather a web-centric approach using Spring/Hibernate/JPA on a Web Server.
So my question is: Have anyone successfully passed the SCEA Part 2 by delivering a solution which did not make use of EJBs? Is the transaction management of the JPA EntityManager sufficient for a system that has no hard requirements for transactions and security?
I would be very interested in hearing people's view on this
The whole point of the SCEA exam is to demonstrate your knowledge of Sun based Java technologies. Are EJBs Sun based Java technologies? Does Sun want you to demonstrate your ability to use them? Would it be a drastic mistake to say to Sun "look, I"m not all that impressed with what you've done with EJBs. I think life is better without your useless little Enterprise JavaBeans?"
Look at the exam objectives. What are they testing you on? What do you think they want to see?
I would argue that all that Java stuff is a waste, and I could do it all better, cheaper and faster with a C#, .NET based solution. Do you think submitting a C#, .NET solution would be a good way to pass the SCEA exam? I mean, it's a valid solution, and you could make a good argument that it's way better than JSF/EJB/POJOs. But would that be a good approach to take on the SCEA exam? If you don't think it is, then for the same reasons, I'd say it's not a good idea to leave EJBs out of your SCEA submission.
Oh, and Thomas, welcome to the JavaRanch! It's nice to see you helping out right away on your second post. We love that Greenhorn enthusiasm here at the JavaRanch!
posted 8 years ago
Thank you for your replies!
I am aware that Spring is not a part of JEE, and my point was never to say that Java or EJB was useless. I was simply trying to say that the way I read the requirements in my assignment, I am not sure if EJBs are necessary. I also think that deciding whether or not EJBs is a good match for your requirements would be a valid way for SUN to test your knowledge about the technology.
So my solution would of course not contain Spring and Hibernate - only valid JEE technologies. But I am still unsure about what mechanism I could use to control my transactions without EJBs.
Cameron: I read your answer as a "No" to the Web-Centric approach
The basic point is that you really need to give them what they want. Stay focussed, keep it simple with regards to which technologies you choose, keep waving the Sun technologies flag, and you'll do fine.
I read Cameron's post as "if Spring and C# and all didn't exist and your only choices were what Sun blessed would you use EJB". To which the answer is yes. You would use the container in Spring. Which means you could use the container in EJB.