SAN DIEGO -- While 10 defensive starters did not suit up, 49ers coach Jim Harbaugh trotted out starting quarterback Colin Kaepernick and the first-team offensive line to open Friday night's exhibition finale.
Kaepernick was impressive in his short stint against the San Diego Chargers in the 49ers' 41-6 victory at Qualcomm Stadium. And, again, he got some help from rookie Quinton Patton, who is making a push to carve out a role once the regular season begins.
Kaepernick hit Patton with a short pass along the right side, and Patton did the rest of the work en route to a 43-yard touchdown to cap the first drive of the game.
Kaepernick completed three of four pass attempts for 64 yards, including a 10-yard completion to tight end Vernon Davis on a third-and-3 situation to extend the drive. The quarterback finished the exhibition season completing 15-of-23 attempts for 171 yards with two touchdowns -- both to Patton -- and no interceptions. His passer rating was 116.4.
Patton missed the first two exhibition games with a fractured left index finger. After catching a team-high four passes for 35 yards in his exhibition debut, Patton had two catches for 52 yards against the Chargers.
For starters: Nose tackle Ian Williams, who is in line to open as the Week 1 starter ahead of Glenn Dorsey, was the only 49ers defensive starter who suited up for the game.
The 49ers' first-team offensive line -- Joe Staley, Mike Iupati, Jonathan Goodwin, Alex Boone and Anthony Davis -- played one series together.
Premium reserves: Veteran outside linebacker Parys Haralson was expendable, in large part, because of the team's confidence in the backups. Dan Skuta and Corey Lemonier, who are virtually assured roster spots, each recorded sacks in the first half.
Then, Cam Johnson, who has a reasonable chance to make the team, recorded the 49ers' third and fourth sacks of the first half. Johnson had an amazing game, which included a block of a Mike Scifres punt and recovery in the end zone for a touchdown late in the third quarter. Johnson powered through a block attempt of Jahleel Addae to block Scifres punt with his right hand. He then chased it down to give the 49ers a 27-6 lead.
Cornerback Tramaine Brock, who is competing with Nnamdi Asomugha for the No. 3 job, had one big hit and one interception at the end of the third quarter.
Michael Wilhoite has solidified his spot as the team's No. 3 inside linebacker and special teams ace. He intercepted Chargers backup quarterback Charlie Whitehurst in the second quarter to set up the 49ers' second touchdown.
Craig Dahl, who's in line to be the third safety, made a third-quarter interception on a Brad Sorensen pass that inside linebacker Nate Stupar deflected. Dahl's pick set up Phil Dawson's second field goal of the game -- a 40-yarder. Dawson earlier made a field goal from 47 yards. He also missed from 52 yards.
On the bubble: Veteran wide receiver Lavelle Hawkins achieved a permanent place in the preseason highlight reel with his 45-yard touchdown catch in the fourth quarter. But that's not half the story. B.J. Daniels pass to Hawkins on a crossing route tipped off his hands. Hawkins kept his concentration and gathered in the pass. He then bounced off a couple of Chargers defensive backs and made a mad sprint into the end zone.
Veteran wide receiver Austin Collie did not help his chances when deep passes from Colt McCoy and Daniels slipped through his hands.
Undrafted rookie Chuck Jacobs made a nice catch of a well-thrown fade from Daniels for a 14-yard touchdown with 4:42 remaining.
Perhaps, undrafted rookie long-snapper Kevin McDermott gained an advantage over incumbent Brian Jennings with his performance Thursday night. McDermott handled every snap in the game, and was perfect. The long-snapper decision looms as one of the most intriguing that faces the 49ers on the occasion of final cuts.
Three QBs remain: Veteran quarterback Seneca Wallace chose not make the trip to San Diego due to personal reasons, the team announced prior to kickoff.
[RELATED: 49ers down to three QBs]
Wallace will be one of the 49ers' 22 roster moves to get down to the 53-player limit by the Saturday deadline. Presumably, the 49ers have their three quarterbacks to begin the regular season: Colin Kaepernick, Colt McCoy and Daniels.
McCoy followed Kaepernick into action and played the rest of the first half. McCoy completed eight of 15 passes for 56 yards, including a 5-yard touchdown pass to Anthony Dixon. McCoy also gained 12 yards on four rushing attempts.
Rookie quarterback B.J. Daniels had another strong showing, as he has a virtual lock on a 49ers roster spot. Daniels completed five of nine passes for 76 yards and two touchdowns. He also rushed for 55 yards on four attempts.
Sitting it out: Running back Frank Gore, wide receiver Anquan Boldin, defensive players Justin Smith, Ray McDonald, Aldon Smith, Ahmad Brooks, Patrick Willis, NaVorro Bowman, Carlos Rogers, Tarell Brown, Nnamdi Asomugha, Donte Whitner and Eric Reid.
Injury concerns: LaMichael James sustained a left knee injury in the first quarter and did not return. He sat on the bench with his left knee wrapped in ice. James carried twice for minus-4 yards and returned one punt for 10 yards.
Offensive lineman Adam Snyder sustained a left hand injury in the second quarter and underwent X-rays. Snyder is projected as the 49ers' top backup at the guard and tackle positions.
What's next: After Wallace, the 49ers will have 21 additional roster moves to cut down to the 53-player limit. The deadline for those cuts is Saturday at 3 p.m.