Bradley Cooper, not a good cast
From my point of view Bradley Cooper doesn't fit this kind of movie, because he doesn't have that vintage look/swing even if he's featured to look like one.
He's way too flamboyant and not serious to do this kind of character.
I think he would fit better on some kind of crook or swindler with his easy smile/laughs and more "modern swing".
Christian Bale is incredible, and he'll do almost every character. He's gifted and you can see that he does works very hard to "seem real".