When you use the UserTransaction API, you're using a high level transaction API that manages all sorts of transactional resources under the hood. Probably what the statement is attempting to say is that it is the responsibility of the container/server provider to ensure coordinated transaction management under the hood... so that when the container or bean provider begins, commits, marks for rollback, or rollback a transaction, the appropriate transactional resources are notified and coordinated.
When we work with JDBC we use the same method calls (begin, commit, rollback methods) and that time we assume that it's the application which is managing the Tx.
There are some more activities, the container does in BMT mode: See core spec 13.6.1
The container must manage client invocations to an enterprise bean instance with bean-managed transaction demarcation as follows. When a client invokes a business method via one of the enterprise bean's client view interfaces, the container suspends any transaction that may be associated with the client request. If there is a transaction associated with the instance (this would happen if a stateful session bean instance started the transaction in some previous buiseness method), the container associates the method execution with this transaction. If there are interceptor methods associated with the bean instances, these actions are taken before the interceptor methods are invoked.
CMT or BMT, it's responsibility of container provider & server provider to handle TX management.