Yuki Ogimi and Mizuho Sakaguchi each scored for Japan, but France substitute Eugenie le Sommer pulled one back in the 75th minute.
A minute later, Elise Bussaglia could have equalized from the penalty spot following a foul, but the Frenchwoman shot wide of the right post.
France attacked for the last 10 minutes of the match, with le Sommer coming close again with an overhead kick that was saved. Ogimi then the hit the post in the 90th after breaking from the halfway line.
Wendie Renard and Louisa Necib each came close for France in the four minutes of extra time.
Japan will play either Canada or the United States in the final on Thursday.
Japan went into the match as the favorite, but World Cup semifinalist France had the better of the opening exchanges with Elodie Thomis and Marie-Laure Delie both looking dangerous down the flanks.
Ogimi gave Japan the lead after France goalkeeper Sarah Bouhaddi fumbled an easy catch. The team's top scorer at the London Olympics got to the rebound first and bundled the ball in from close range.
Three minutes into the second half, Japan had doubled its lead when Sakaguchi looped a header into the top right corner.
More Sports Headlines
Snohomish mixed martial artist returns to her first love Mariners beat Twins 4-3 in 11 innings 4:03 p.m. Charles scores 29 points, Liberty beat Storm 78-62 4:49 p.m. Park wins Women's British Open, captures 4th different major 4:38 p.m. Perry wins 2nd straight Champions Tour's 3M Championship 4:33 p.m. Merritt shoots 67 to win Quicken Loans National by 3 shots 4:30 p.m. Triple Crown winner American Pharoah wins $1.75 million Haskell Invitational 4:25 p.m. Bills' Ryan names Incognito starting left guard 4:22 p.m.
Our new comment system is not supported in IE 7. Please upgrade your browser here.