I hope the question I am going to ask makes some sense...
I am a good PHP programmer (in LAMP environment) and have also a good knowledge of Java (J2SE).. I am going to start a new project which will consist in developing a "simple" ecommerce site (an ecommerce is never simple, but this one will require just a few basical functonalities).. Since I have always wished to learn more about Java EE, I am wondering how much extra effort it would require to use Java technologies (instead of PHP) for this new project (yes, I'd like to catch the famous 2 birds with one stone!)... I know Java EE is not the easiest thing one could learn, but nothing is impossible... What do you think? In your opinion, is it too risky to start a non-toy project like an ecommerce while beginning Java EE? And, above all, could you kindly suggest me any books/reference to start with? I thought of "Beginning Java™ EE 6 Platform with GlassFish™ 3: From Novice to Professional": do you think it will give me the skills needed for this kind of projects?
JEE is a very large topic. I think you are asking about just servlets and jsps. (and not JPA, messaging, etc.) If so, it is more effort than PHP, especially since you know PHP. But it is a good area to start out with and will likely result in a more cleanly designed application.
I recommend starting with a Servlet/JSP book so it is focused on what you need to know. Also, it is helpful if they use the same server as you intend to. Tomcat and JBoss are more common than Glassfish.
Well, there is nothing that will help you learn the technology like working on a real project!
I was asked to build a J2EE project which was expected to deploy to JBoss application server.
To guide me along the way, I purchased two books, both of which helped me in a large way. They are both from Manning publications. The first is EJB3 in Action - a fantastic help in coming up to speed with EJB3 (it actually covers most aspects of contemporary J2EE applications). The second is JBoss in Action - a fantastic help in getting up to speed with JBoss configuration, administration, etc.