tags:

views:

62

answers:

3

Many J2EE developers know that EJB2 forces them to write 'useless' Home interfaces. In addition, deployment XML are different among application servers.

So I don't know why EJB2 is part of J2EE specification for many years? Any non-technical interest are concerned?

+5  A: 

Are you asking why in general people still use EJB2.1?

Because:

  • That's what they know, and they're frightened or don't have time for a new skill set.
  • Because whoever wants that code wants it to follow a standard, and EJB2.1 is that standard.
  • Because the rest of the code base is EJB2.1, and nobody has the time and/or money to refactor.
  • Because the client only wants technology they trust, and what they trust is whatever hasn't failed them yet.

The same reasons anybody uses legacy technology, basically.

mikek
+1  A: 

Why EJB2 is part of the J2EE specs: because it is! It once was, and so it will always be. (You cannot change a binding contract in mid-term.)

In order to not make it part of the specs, they had to come with new specs: JEE This is the updated version of J2EE, using Java 5.

Why it is still being used: - see above - the client has no money/time to change this - the client uses and old version of the application server - it works, so we do not change it

SPee
+1  A: 

The complexity of EJB2 needs more programmer human resource. So EJB2 is good for programmer employment rate. This is a reason for EJB2 survive:)

AJ09