O meu código abaixo não fazia o update até que eu coloque a linha do sysout usando o objeto conta. Quando fiz uma leitura no objeto aí o entitymanager passou a fazer o update!! Por que isso?
public class TesteJPA {
public static void main(String[] args) {
EntityManager manager = new JPAUtil().getEntityManager();
manager.getTransaction().begin();
// ID de uma conta que exista no banco de dados, no caso ID: 1
Conta conta = manager.find(Conta.class, 1);
// commit antes da alteração
manager.getTransaction().commit();
// Alteração do titular da conta
conta.setTitular("Caelum Ensino e Inovação");
manager.getTransaction().begin();
manager.merge(conta);
manager.getTransaction().commit();
// precisou dessa linha abaixo senão o manager não faz o update!!!
System.out.println(conta.getTitular());
manager.close();
}