PHILADELPHIA -- Ricky Dobbs sat in a small room deep inside Lincoln Financial Field and recalled a team meeting from earlier this season. Navy had just lost to Air Force, the Commander-in-Chief's Trophy was slipping away, and the season was on the verge of doing the same.

"We had some very high expectations for ourselves and maybe they got the best of us," the senior quarterback said. "We had that meeting and just said, 'We have a lot of football to play and we need to start having fun.'"

Nothing is more fun than beating Army.

Dobbs threw the longest touchdown pass in the 111-year history of the storied rivalry, Wyatt Middleton had the longest fumble return in Navy history, and the Midshipmen extended their winning streak against the Black Knights to nine straight with a 31-17 victory Saturday.

Dobbs passed for 186 yards and two touchdowns for Navy (9-3), one of 24 seniors to never lose to their rivals from West Point. The happy-go-lucky quarterback turned the ball over four times -- three fumbles and an interception in the end zone -- but also ran for a team-high 54 yards.

"Those turnovers drive you crazy," Navy coach Ken Niumatalolo said, "but that's Ricky."

Trent Steelman threw for 128 yards and two scores for Army (6-6), but it was his fumble late in the first half that put the Black Knights in a hole too deep to escape.

They already trailed 17-7 with first-and-goal at the Navy 3 when Steelman was stood up on a quarterback keeper. The ball squirted from his hands and right to Middleton, who turned around to see nobody in a black jersey between him and the goal line. The 98-yard return made it 24-7 at halftime, silencing the gray-clad Cadets standing in their customary corner of the stadium.

Middleton, a senior, was named the game's MVP.

"They had us reeling there," Niumatalolo said. "We preached all week about not giving them a short field, and we gave them exactly that. But our defense stepped up."

Army controlled the ball much of the second half, but could only muster Alex Carlton's 42-yard field goal before Steelman's late touchdown pass to Malcolm Brown provided the final margin.

"Our guys are in there, looking at each other like 'We can hang with this bunch. We can compete there,'" Army coach Rich Ellerson said. "But that's not the same as doing it, or not doing it for 60 minutes."

Both teams lost to Air Force this season, ending the Midshipmen's seven-year grip on the Commander-in-Chief's Trophy awarded to the top service academy. But another victory over Army -- the game that matters most on the schedule every year -- certainly helped to ease that sting.

Army is still headed to its first bowl game since 1996, the Bell Helicopter Armed Forces Bowl on Dec. 30 in Dallas against SMU. The Midshipmen play San Diego State in the S.D. County Credit Union Poinsettia Bowl on Dec. 23.