llevo desde el princio arrastrando este problema
no entiendo que es lo que esta mal asi que comparto los codigos que se muestran y por favor si son tan amables de ayudarme, ya me canse y siento que no avanzo me di cuenta que justo al hacer el select de buscar por id termina el proceso
public class RegistroPedido {
    public static void main(String[] args) {
        registrarProducto();
        EntityManager em = JPAUtils.getEntityManager();
        ProductoDao productoDao = new ProductoDao(em);
        
        Producto producto=productoDao.consultaPorId(1L);
        
        
        PedidoDao pedidoDao= new PedidoDao(em);
        ClienteDao clienteDao=new ClienteDao(em);
        Cliente cliente = new Cliente("luis fonsi", "dibm990210");
        Pedido pedido = new Pedido(cliente);
        pedido.agregarItems(new ItemsPedido(5, producto, pedido));
        em.getTransaction().begin();
        pedidoDao.guardar(pedido);
        clienteDao.guardar(cliente);
        em.getTransaction().commit();
        em.close();
    }
    private static void registrarProducto() {
        Categoria celulares = new Categoria("celulares");
        Producto producto = new Producto("Motorola", "telefono marca patito", new BigDecimal("8000"), celulares);
        EntityManager em = JPAUtils.getEntityManager();
        ProductoDao productoDao = new ProductoDao(em);
        CategoriaDao categoriaDao = new CategoriaDao(em);
        em.getTransaction().begin();
        
        categoriaDao.guardar(celulares);
        productoDao.guardar(producto);
        em.getTransaction().commit();
        em.close();
    }
}