And Millwall blew a late chance to win the game when referee Scott Matheson tried to hog the limelight by awarding the Lions a free-kick a foot outside the penalty area for a foul on Danny Dichio.
If there even was a foul it was committed in the area, but the ref was not to be swayed, and player-boss Dennis Wise opted to tap sideways rather than try and beat a ten-man wall.
And even though it ended badly and Dichio's first goal in 12 games was not good enough for a Millwall win, Wise can take heart that their FA Cup hangover is over.
But it wasn't pretty. The Baggies seemed determined to kick seven shades of the proverbial out of their opponents and paid the price when Jason Koumas was given his marching orders two minutes before half-time.
But the Baggies charged and barged their way back into the game, and Johnson scored possibly the easiest goal of his career when he tapped in from six inches out, after Robbie Ryan failed to clear off the line.
Ryan tried to intercept Sean Gregan's shot and was all over the place as he scuffed the ball into the path of Johnson.
It was after Millwall looked to have ended their post FA Cup semi-final slump with Dichio's first goal since February.
Dichio, the man bought from the Baggies to aid Millwall's promotion charge, rose to nod in Dennis Wise's cross and settle the Lions' nerves.
And Koumas added to West Brom's woes just before the break when he saw red for chopping down Wise, after earlier being booked for a tackle on the same player.
The sending off couldn't have happened at a worse time for West Brom, who were all over Millwall and had gone close through Koumas and Delroy Facey.
West Brom should have gone ahead in the 10th minute when Koumas' free-kick just skimmed the top of Thomas Gaardsoe's head when the defender was unmarked at the far post.
Dichio almost grabbed a second midway through the half when he rose to meet Tim Cahill's cross but just failed to reach it.
And midway through the second half he should have done much better when fed from Cahill - at his scrappy best despite being one booking away from missing the Cup final - only to blast over the bar.
Late on Gaardsoe was also dismissed as the Baggies ended the game two men short.
Millwall: Marshall, Elliott, Lawrence, Ward, Ryan, Wise, Cahill, Roberts, Livermore, McCammon, Dichio. Subs: Gueret, Harris, Chadwick, Sweeney, Hearn.
West Brom: Hoult, Chambers, Moore, Gaardsoe, Koumas, Gregan, Johnson, O'Connor, Clement, Horsfield, Facey. Subs: Murphy, Dyer, Hughes, Dobie, Kinsella.
Referee: S Mathieson (Cheshire).