Win a copy of Think Java: How to Think Like a Computer Scientist this week in the Java in General forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Technologies needed for a small e-commerce website??

 
Sammy Bill
Ranch Hand
Posts: 96
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello Ranchers,

I m working on a small E-commerce website that i have to implement in Java EE 5.

What technologies do you advice to use for each layer??


Thanks in advance.
Oussama
 
Reza Rahman
author
Ranch Hand
Posts: 580
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Oussama,

Presentation tier: JSF/Seam
Service tier: EJB 3/Seam
Persistence tier: JPA

Hope this helps.

Reza
 
Ulf Dittmer
Rancher
Posts: 42967
73
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You're really not going to get a useful answer to a question like that. Everybody's got their favorite library/technology that they're going to pitch, but that doesn't mean that it's appropriate in your case. It depends so much on the expertise of the team that will develop this, the expertise of the team that is going to maintain this, the infrastructure to be used, etc. - all of which we know nothing about.
 
Reza Rahman
author
Ranch Hand
Posts: 580
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Oussama,

Ulf is of course right. You can use Spring instead of Seam/EJB 3 and Struts 1, Struts 2, Spring MVC, Wicket, etc instead of JSF. You can also use Grails/Rails on top of a Java EE 5 server, so in theory it will still be a "Java EE 5" application.

I noted Seam/EJB 3 because it is more tightly integrated with Java EE 5 and it is also obviously my preferered platform. Some of my clients also choose to use EJB 3 and Spring together without Seam and the results are very good.

As I see it, the Seam/EJB 3 stack is simpler to learn but the Spring stack is more flexible. If you would like to work with components/events/AJAX, JSF is the way to go. If you don't, the other web frameworks are a toss-up. Wicket is particularly lightweight. You can consider Grails/Rails if you prefer dynamic languages but they are less performant and can be harder to maintain/debug, especially with larger teams. Grails/Rails is not something I recommend.

You can use plain Hibernate for persistence, but I really would not recommend it. Neither would I recommend TopLink, JDO, etc. Spring JDBC or iBATIS can be the right choice if you want to stay away from heavy ORM or have a legacy database. Otherwise, these don't make much sense either.

Hope this helps,
Reza
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic