You have to be very careful with the BA website says it's selling J but quietly dumping you in Y for one of the legs when on a different airline.
There have been other reports of this happening here. I also saw it quite regularly when I used to fly BA to Asia, with Cathay taking over the flight from HKG. It still happens when I check BA for prices, although I've learnt to keep fiddling with the dates until it shows J for all four (return) flights.
We now fly Cathay all the way so the problem doesn't impact us, but if I ever decide for us to fly BA again, I'll be very careful to check each leg for the class.