You remember this picture...

But it was too high-level to get us anywhere. Think about how much is missing from this picture. Like, how does the client get a reference to something running on a different machine? How does the client actually communicate with the bean? How is it that the server can step into the middle of a client-to-bean method call?

Beneath EJB, there’s Java’s distributed technology for Remote Method Invocation (RMI). Although EJB hides some of the complexities of RMI from the bean developer, it’s still there, and unless you truly understand it, some pieces will never make sense.

So, we start our descent from a high-level view to the blood and guts of EJB with a lesson on RMI. If you’re one of the fortunate who’ve already worked a lot with RMI, you can skip this and go straight to the part where we talk about the ways in which EJB uses RMI. But you should still at least skim it, even if you’re an experienced EJB developer, if for no other reason than to get comfortable with the terminology and pictures we’ll use throughout the rest of the book.

OK, back to where we started—what’s missing from this picture? Start by looking at the places where a miracle occurs...

image with no caption

A ridiculously high-level view of EJB architecture

Get Head First EJB now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.