Leinster's Fergus McFadden tackles Marc Stcherbina at the RDS
Leinster battled back from 10 points down in the first half to beat the Dragons at the RDS.
An intercept try by Hoani MacDonald helped the Dragons take their early advantage with James Arlidge also landing two penalties.
Crucially, Sean O'Brien replied quickly with a Leinster try and cut the margin to 13-10 at the interval.
After Jonathan Sexton levelled, Bernard Jackman's try put Leinster ahead and Rocky Elsom added an injury-time score.
Ireland skipper Brian O'Driscoll was forced off because of a shoulder knock in the second half but a Leinster spokesman told BBC Sport that the injury was "not believed to be too serious".
The Irish province had run riot the last time the Newport-Gwent outfit visited Dublin last May, scoring a 41-8 win which confirmed them as champions.
The Dragons produced most more resistance on this occasion and Leinster were rattled in the early stages.
In wintry conditions, the Dragons settled into their stride and they deservedly moved 6-0 ahead thanks to two Arlidge penalties.
With Sexton receiving attention, Fergus McFadden booted the hosts' first points after 19 minutes, but the Dragons pulled 10 points clear when second row MacDonald grabbed an intercept try.
The Junior All Black swooped on a loose pass from Sexton to gallop over close to the posts.
Leinster responded almost immediately with flanker O'Brien coming in on a great angle into the Dragons' 22 and handing off Arlidge to dot down.
Sexton converted and while the Dragons lost MacDonald to the sin-bin for his hauling down of Devin Toner at a lineout, their lead still stood at 13-10 at the break.
Sexton levelled matters shortly after half-time with a well-struck penalty and after repeated darts at the Dragons line, hooker Jackman grabbed a try on the hour mark.
Arlidge missed a chance to cut Leinster's lead and replacement David Holwell and McFadden then landed penalties to increase the home team's advantage.
Girvan Dempsey's great run set up Elsom's late try in the corner, with Holwell playing his part by delivering a superb pass.
Dragons coach Paul Turner: "We were on the ropes a little bit at the end and to lose the second half 19-0...
"We got too in-disciplined and dropped off too many tackles and against a quality side, they will always punish you.
"It was disappointing but we came to a place like this and competed like we have."
Leinster: G Dempsey, S Horgan, B O'Driscoll, F McFadden, S Keogh, J Sexton, C Whitaker (cpt); C Healy, B Jackman, S Wright, D Toner, M O'Kelly, R Elsom, S O'Brien, S Keogh. Replacements: Replacements: C Jowitt for S. Keogh (62), D Holwell for Sexton (65), C Keane for Whitaker (65), Hogan for Toner (67). Not Used: B Blaney, CJ van der Linde, G Brown.
Dragons: P Dollman; G Wyatt, R Sidey, M Stcherbina, R Fussell; J Arlidge, W Evans; A Black, T Willis (capt), G Robinson, H Macdonald, A Hall, J Bearman, L Evans, G Webb. Replacements: S Connor for Arlidge (61), S Jones for Willis (75), J Corsi for Robinson (75), D Lydiatt for Hall (27), J Ringer for Webb (47). Not Used: A Smith, R Lewis.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.