Dragons (5) 26
Tries: Tovey 3 Con: Tovey Pens: Tovey 3
Ulster (10) 16
Try: Danielli Con: Humphreys Pens: Schifcofske 2, Humphreys
Ulster centre Darren Cave is tackled by the Dragon's Phil Dollman
The Dragons enjoyed a deserved 26-16 win over Ulster with Jason Tovey scoring three tries and ending the game with a personal tally of 23 points.
Ulster led 10-5 at half-time with Simon Danielli scoring a try in reply to Tovey's early opening touchdown.
The visitors extended their lead to 16-8 but Tovey kicked a penalty and added his second try to level the game.
A further penalty by the full-back nudged the Dragons ahead and Tovey crossed the line again at the end.
Ulster were forced to make a late change to their starting line-up with Italian second row Carlo del Fava coming into the side in place of Ryan Caldwell who had a stomach complaint.
Irish international prop Tom Court was sin-binned for a professional foul in the fourth minute and then Tovey scored the game's opening try two minutes later.
The full-back completed a fine move involving Ashley Smith and Richard Fussell by going over in the corner, with the conversion being missed by Shaun Connor.
Ian Humphreys converted a penalty from in front of the posts and then missed with a long-range attempt.
The Dragons mob Jason Tovey after his hat-trick of tries
Ulster moved in front in the 21st minute when Danielli scored under the posts after the ball broke loose to the Scottish winger.
Humphreys converted but was then off-target with a penalty effort which would have extended his side's advantage before the break.
The Dragons had the advantage of the wind in the second half but Connor and Tovey were unsuccessful with penalty attempts.
Connor then kicked a penalty to reduce his team's arrears to two points but the Welsh side suffered a setback when Rhys Thomas was sin-binned for obstruction.
Clinton Schifcofske landed the resulting penalty to make it 13-8 and added another to extend the lead.
Tovey responded with a penalty and, with Ulster flanker David Pollock in the sin-bin, the Dragons hero crossed the line for his second try after a period of sustained pressure.
Tovey missed the conversion but made amends with a penalty, a 78th-minute try after a speculative pass from Andrew Trimble went astray, and then a conversion.
Dragons coach Paul Turner:
"Up to the last 10 minutes I was thinking that Ulster were going to get away with it.
"It only looked like there was one winner out there, but we seemed to lack composure at key times and they looked like getting a smash and grab."
Dragons full-back Jason Tovey:
"It was a team effort, I wouldn't have got those tries without the work of the forwards."
Dragons: Jason Tovey; Martyn Thomas, Rhodri Gomer Davies, Ashley Smith, Richard Fussell ; Shaun Connor, Wayne Evans; Adam Black, Tom Willis (capt), Rhys Thomas, Adam Jones, Hoani Macdonald, Joe Bearman, Richard Parks, Lewis Evans.
Replacements: Steve Jones, Nigel Hall, Andrew Hall (for A Jones 65), Grant Webb (for L Evans 51), Phillip Dollman (for Davies 5), Kevin Morgan (for Connor 51), Rob Lewis.
Ulster: C Schifcofske, A Trimble, D Cave, P Steinmetz, S Danielli, I Humphreys, I Boss, T Court, N Brady, B Botha, E O'Donoghue, C del Fava, D Pollock, K Dawson (capt), C Henry.
Replacements: S Phillpott (for Brady 53), B Young (for Court 58), M McCullough (for Henry 64), C Willis (for Boss 48), I Whitten (for Steinmetz 45), N O'Connor (for Humphreys 46), R Caldwell (for McCullough 69).
Ref: Neil Paterson (SRFU).