A container callback method is a method that the container needs to invoke on some object for carrying out its work. Usually a callback method is declared in an interface (SessionBean, EntityBean, SessionSynchronization, etc) that classes will implement in order to satisfy a contract with the container in which they will run. In that sense, ejbCreate is also a callback method except that it is not explicitely declared in the *Bean interfaces because the developer may choose to append some custom suffix to its name, as in ejbCreateWithNameAndPlace(
String name, String place) for instance.
Usually, everything that goes through the EJBObject comes from the client. Now, a client may invoke some method that will cause the container to invoke a callback on the bean before executing the desired method. For instance, if an entity bean is passivated and the client invokes a method on it, the container will first call ejbActivate() and ejbLoad() on it before serving the request.
Does this make sense?