The England goalkeeper was beaten by Darren Ward and Danny Schofield either side of half-time before Paul Robinson put the Lions in dreamland on the hour mark.
However, their was a sour note to Millwall's day as Darren Carter was sent off for two bookable offences.
James was one of three full debutants, along with Nicky Hunt and Damion Stewart, for a City side depleted by injury. Last season's top scorer Nicky Maynard was the most notable of seven absentees for the Robins.
Likewise, Carter was one of three players to be handed full debuts by Millwall boss Kenny Jackett. James Henry and Kevin Lisbie completed the trio.
There were few chances in the first half. Ward and Robinson had efforts on goal from Henry crosses but their headers failed to work James.
However, with three minutes remaining in the first half the England keeper was beaten. Lisbie's shot rebounded off a post and into the path of Ward at some pace but the defender managed to control his shot and returned the ball into the roof of the net.
Millwall extended their advantage three minutes after the interval when Schofield curled a right-foot shot into the bottom corner from the left side of the area.
The closest City came to a goal was when Cole Skuse's 12-yard shot struck a post after 56 minutes.
But it was not the catalyst to spark any kind of revival as Robinson put the game beyond City's reach soon afterwards. Henry's inswinging corner was headed against the crossbar by Lisbie and Robinson reacted quickest to turn the ball home.
Millwall's day was slightly tainted in the 64th minute when Carter received a second yellow card, and a subsequent red, for a foul on Albert Adomah.
James produced a good save to keep out Henry's close-range header as the Lions continued to threaten despite their numerical disadvantage.
However, City also finished the game with 10 men when Stewart was shown a second yellow card following a challenge on Lisbie in injury time.