It really depends for what purpose you are trying to choose the carriers. If you want to get to BCN A.S.A.P.then Iberia from the U.S. is the go BUT this airline has a shocking service and comfort history, so it may be very wise to avoid it at all costs.
If I were you, then I'd go after the maximum amount of miles and maximum comfort. My solution would be AY (Finnair). You fly from JFK-HEL and from there onto Spain. AY's trans-Atlantic service is very good and intra-European is great in comparison to SK, for example.
Whatever you choose, just avoid Iberia and as you already have been told, you will not earn any AA miles on BA flights unless they are AY codeshares from Canada.