This week's giveaway is in the Android forum.
We're giving away four copies of Android Security Essentials Live Lessons and have Godfrey Nolan on-line!
See this thread for details.
The moose likes Jobs Discussion and the fly likes EJB's  must????? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Android Security Essentials Live Lessons this week in the Android forum!
JavaRanch » Java Forums » Careers » Jobs Discussion
Bookmark "EJB Watch "EJB New topic
Author

EJB's must?????

Priya Sri
Ranch Hand

Joined: Mar 30, 2004
Posts: 84
hi friends,

I have worked on 3 j2ee projects on tomcat and I am able to program servlets,jsps,jdbc,java well. I don't know EJB's right now. We didn't use WEBSPHERE/WEBLOGIC server for the applications I had done.

1) Is it mandatory to know EJB's for me to get a break in big IT company? If it is mandatory,What is the best approach to learn EJB's? Should I need to join any course outside for j2ee?

2)IS working on WEBSPHERE/WEBLOGIC server is needed to get a new job? OR
tomcat alone is sufficient?


Bye
priya
Grishma Dube
Ranch Hand

Joined: Jul 01, 2003
Posts: 275
Hi Priya,

EJB technology is in gr8 demand right now. So most of the big companies are giving preference to those people, who have worked on EJB.

You must be aware that, the Tomcat is just a servlet engine (or a web server), which is used to run your JSPs and servlets. But if you are going for Adv. J2EE Technologies such as JMS, EJB,etc. then you have to go for an Application Server i.e Weblogic, Websphere or Oracle Server, etc.

So in a way, you can say that EJB and one of the application server knowledge is must to get a job in big compnaies.

TIA

Grishma
Kj Reddy
Ranch Hand

Joined: Sep 20, 2003
Posts: 1704
Hi Priya

In a project every one wont get chance to work in devloping all components. So In a ejb project every one will be working with ejbs. I worked 3 J2EE projects. So either me or my PL used to work on EJBs as the work is very less.

And more over if you take companies like Oracle, SAP they do take people who just knows servlets, jsps also. So dont worry much that you didnt worked with EJB. But as Grishma pointed most of companies prefering people with knowledge of J2EE, EJBs. So try to gain some knowledge in J2EE, EJB, Design Patterns.

For EJB you read Ed Roman Mastering EJB which is best book, and even EJB by Oriely also very good. And to improve in other areas you can follow the forums in Javaranch and read Jguru FAQs too.

Regards
Jagdish Reddy
Bangalore
Jeroen Wenting
Ranch Hand

Joined: Oct 12, 2000
Posts: 5093
I've never needed EJB and don't intend to...
For most any purpose they're the wrong technology.
That doesn't mean people won't decide to use them, but usually they'll be making the wrong choice (same as a few years back when everything had to be XML, we even got an official requirement handed down from the CEO (this was a multinational) that stated the board had decided that every application MUST use XML within 2 years and all new applications MUST use it from that point on), EJB falls into the same category).

Problem might be selling that point, but the people that are smart enough that you want to work for them will understand your point...


42
Sonny Gill
Ranch Hand

Joined: Feb 02, 2002
Posts: 1211

I agree with Jeroen, EJBs are only suitable for a minority of applications where there is a real need for a distributed architecture. Rod Johnson's two books do a pretty good job of explaining the pro's and con's of using EJB's.

I personally am happy to stay away from EJB's as long as I can.

Using EJBs where they are not needed could be the worst decision made on a project. Unfortunately, EJB is still very glamourous (atleast in Singapre and India as I know it).

So if you must learn EJBs, I have heard that Ed Roman's book and Head First EJB are pretty good. If you are in India, dont waste your time and money on a course claiming to teach EJB's. Those places are full of BS. Anybody good enough to actually do a good job of teaching EJB's wont be hanging around in places like those.


The future is here. It's just not evenly distributed yet. - William Gibson
Consultant @ Xebia. Sonny Gill Tweets
Priya Sri
Ranch Hand

Joined: Mar 30, 2004
Posts: 84
Hi friends,

Thanks for sharing ur thoughts with me ...

Bye...
Priya
Pradeep bhatt
Ranch Hand

Joined: Feb 27, 2002
Posts: 8904

Those places are full of BS.


BS?


Groovy
Mani Ram
Ranch Hand

Joined: Mar 11, 2002
Posts: 1140
Originally posted by Pradeep Bhat:
BS?


Brilliant Students or Bull Shit, which ever you prefer!


Mani
Quaerendo Invenietis
Pradeep bhatt
Ranch Hand

Joined: Feb 27, 2002
Posts: 8904

Originally posted by Mani Ram:


Brilliant Students or Bull Shit, which ever you prefer!





I am currently reading Expert One-on-One J2EE Development Without EJB
by Rod Johnson and Juergen Hoeller.
[ December 01, 2004: Message edited by: Pradeep Bhat ]
Frank Silbermann
Ranch Hand

Joined: Jun 06, 2002
Posts: 1385
EJBs were designed to be the better CORBA. When 2-tier client-server systems were proving to be unscalable to large user bases, people realized that we needed to put business logic on the server, which required some sort of application server to handle user connections, pooling of connections, etc. EJBs were designed for that.

The trouble is that around the time EJBs became available, the fashion shifted from distributed client-server PC applications to browser-based HTML web applications. The web server took so many of the responsibilities away from the application server that, for the responsibilities remaining, EJBs began to look like a sledge hammer being used against penny nails.
Tim Holloway
Saloon Keeper

Joined: Jun 25, 2001
Posts: 15959
    
  19

EJBs provide about 5 very useful services. Let me see if I can remember all of them:

1. Componentized logic (Session EJBs)

2. Database independence and automated persistence (CMP)

3. Transaction Management

4. Remote Method Invocation

5. Role-based method access control

6. caching

7. Atomic access

Well, that's not my usual list, but it will do. As a rule, if I don't need at least 3 of the above, I'll probably avoid EJBs, but if I need 3 or more of those features, it's definitely better not to have to re-invent (and re-debug) them, so EJBs are worth considering.

The original EJB architecture was clumsy, slow, and rather vendor-dependent. A lot of work has been done since then, though I think a lot more can be done. In the meantime, JDO and Hibernate have become popular choices for EJB-like persistence where some of the more exotic EJB features aren't required.

A good toolbox has LOTS of tools in it!


Customer surveys are for companies who didn't pay proper attention to begin with.
Eric Lemaitre
Ranch Hand

Joined: Jul 03, 2004
Posts: 538

Hi !

Yes and no.

EJB are not a must at all in a standard Java developper's role, for they remain a specialised tool for specific usage. You can consider it as a specific Java topic such as JMX, JINI, J2ME, JDO, ..., you won't be really disadvantaged if you don't know them. But you should be able to code a Servlet and deploy it in Tomcat, for this is so common now it will be considered as a basic stuff, like anyone should be able to write basic HTML code.

But if you want to make a further step to architecture, you must absolutely know them, as well as Web Services and probably basics of .Net too so as to be able to defend a Java project against $Soft. You should have to know many other things but they would be simple "nice to have" as JDO and J2ME.

Best regards.


Eric LEMAITRE
CNAM IT Engineer, MS/CS (RHCE, RHCX, SCJA, SCJP, SCJD, SCWCD, SCBCD, SCEA, Net+)
Free Online Tutorials: http://www.free-tutorials-online.net/
soniya saxena
Ranch Hand

Joined: Nov 18, 2004
Posts: 300
Priya, let me give u the practical answer to this question. This has got nuthing to do with whether or not EJB is a good technology. It is about the probability of EJB questions being asked in the interview and the interviewer's personal opinion or his team's opinion if EJB is a must have for that position. Given that EJB is still used in lots of companies and given that many people are still not aware of EJBs being a bad architectural choice in most cases, a strong probability exists that u cud be asked questions on EJB. And it would be a nice idea to prepare urself on the same atleast so that u know the basics.
Damian FRACH
Greenhorn

Joined: Oct 18, 2004
Posts: 26
EJB flaming is now very popular. Almost everybody does it ...

1) Check on jobserve.co.uk, how much is demanded EJB and e.g. Hibernate (320:25)

2) go for Session EJBs 2.1 if:
- distributed architecture
- container managed transactions
- container managed security
- message driven beans
- monitoring (you can see the EJB object statistics in container)
- XML description file (everything on one place)

3) disadvantages of the Session EJBs 2.1:
- 2 interfaces and 1 class
- bloated API
- big XML description file (big, difficult to find)

- with right design patterns (ServiceLocator, BussinesDelegate) and right IDE you can avoid it

- most popular competition: Spring
- - not very demanded now on JobServe
- - EJB 3 will be very similar and will be here in 2-3 years
- - EJB 3 will be implemented by 10-20 vendors; Spring is only one implementation

4) State full Session Bean has similar performance and scalability characteristics as HTTP session (theServerSide.com)

StateLess and Message Driven Beans do not have almost any minuses

5) for any bigger app (performance + scalability) you need object-relational mapping (entity EJB, hibernate, JDO, toplink, ...) for a DB caching

6) BEA CMP entity EJBs have better or same performance as Hibernate (theServerSide.com)

7) Entity EJB pluses :
- performance is same as Hibernate
- they are implemented by JDO (SUN) or TopLink (Oracle) anyway
- Hibernate 3 will implement the EJB3
- EJB are still 10 time more demanded then Hibernate on JobeServe.co.uk now
- EJB 3 as EJB 2.1 will be/are implemented by 10-20 vendors; Hibernate+Spring is only one implementation

8) Entity EJB minuses:
- bloated API
- EJB QL is weak especially for rich OO domain model
- rich OO domain model is not fully supported (e.g. inheritance)

- do you want to hit your relational DB (Oracle) by rich OO domain model?
I personally for a big scalable application NO.



So IMO the EJB flaming is little bit unjustified and very often is based on personal feelings then on facts.
Manish Hatwalne
Ranch Hand

Joined: Sep 22, 2001
Posts: 2578

Originally posted by Jeroen Wenting:
I've never needed EJB and don't intend to...
For most any purpose they're the wrong technology.
That doesn't mean people won't decide to use them, but usually they'll be making the wrong choice (same as a few years back when everything had to be XML, we even got an official requirement handed down from the CEO (this was a multinational) that stated the board had decided that every application MUST use XML within 2 years and all new applications MUST use it from that point on), EJB falls into the same category).

Problem might be selling that point, but the people that are smart enough that you want to work for them will understand your point...


I wholeheartedly agree with Jeroen is saying!!
Not many ppl realize it though....

- Manish
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: EJB's must?????
 
Similar Threads
Opinions
Advice needed!
Looking for deployment procedure for WebSphere Application Server
Need of IDE
Websphere Basic questions.