This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
From a high level, a CMP is an entity bean, which should really only be used for database transactions i.e. select, update, remove. You most likely would call CMP from other type of beans/Java clients to perform those functions. It is good practice to keep your database transactions away from your application logic. Stateless Session beans and CMP have different bean lifecycles and different requirements ... do u require a list?