NEIL Harris celebrated his testimonial at The Den today but was unable to prevent the Lions suffering defeat to Hearts in an entertaining game.

Eggert Jonsson put the Jambos in front on 12 minutes before goals either side of the break from Liam Trotter handed Millwall the advantage.

However, two stunning free-kicks by Craig Thomson ensured it was the Edinburgh side who took the honours.

Hearts had the first chance when David Templeton failed to make a decent connection with Craig Thomson's second minute cross and his header went harmlessly wide, while Jonsson blazed a shot over the bar four minutes later.

Hearts took the lead when they were awarded a penalty on 12 minutes.

Lions skipper Paul Robinson upended Lee Wallace as he broke into the box and Jonsson sent David Forde the wrong way from the spot.

Harris saw a low shot from 25 yards drift wide and then Danny Schofield's cross to the back post was volleyed straight at keeper Marian Kello by James Henry.

Henry drilled a 19th minute free-kick straight at the Hearts wall, while a good move from the visitors ended with Ryan Stevenson's powerful 20-yard drive forcing a save from David Forde.

Steve Morison was unfortunate to see his first touch take the ball out of play after getting on the end of a delightful pass from Trotter midway through the first half.

Morison challenged Jonsson and Ismael Bouzid in quick succession, an incident which floored both players and ended with Bouzid being stretchered off and replaced by Ryan McGowan following a long period of treatment on the field.

Harris could rightly consider himself to have been harshly adjudged to have been offside when picked out completely unmarked by Jimmy Abdou four minutes before the break.

However, the Lions were back on terms just before the referee blew his half-time whistle when Trotter headed home Henry's corner.

Kenny Jackett opted to replace Andy Frampton with Jack Smith at the start of the second half but the first chance fell Hearts' way when Forde had to react quickly to gather McGowan's low shot three minutes after the restart.

But it was Millwall who took the lead in the 54th minute when Henry's inch-perfect cross was headed past Kello by Trotter for his second of the afternoon.

Stevenson placed a powerful drive past Forde's post before goal hero Trotter made way for Marc Laird.

Laird released Morison with a great pass and Harris was only inches away from connecting with his strike partner's low cross to cap his big day with a testimonial goal.

Paul Robinson's 64th minute header put Morison clean through but his shot went wide of the target as Millwall began to take control.

Despite this, Hearts drew level five minutes later when they were awarded a free-kick outside of the area and Thomson stepped up to fire the set piece past the wall and Forde.

Kevin Lisbie came off the bench to make his Millwall debut when he replaced Morison on 71 minutes.

Laird headed just over from Henry's 73rd minute delivery as the hosts tried to immediately restore their advantage.

Thomson attempted to repeat his earlier piece of skill when he stepped up to take another free-kick from a similar position to where he scored his goal but this time the defensive wall did its job and the danger was cleared.

Lisbie had a great chance to score when he rounded the keeper but possibly took it far, a mistake which meant he had to pull it back to Henry and his shot was blocked on the line.

Hearts took the lead three minutes from time when they were awarded a free-kick some 30 yards from goal and Thomson stepped up again to smash it past Forde.

It was hard luck on Harris, who left the field on 90 minutes to huge cheers from both sets of fans and was replaced by Hackett.

It was a fitting end to a game which certainly wasn't lacking in commitment from either side, unlike so many other pre-season fixtures.

The only slight disappointment was the crowd of 8,376, almost one thousand of whom were here to support Hearts.

Surely a Millwall legend like Harris deserved better than that?

Millwall: Forde, Dunne (Mkandawire 86), Robinson, Ward, Frampton (Smith 46), Henry, Abdou, Trotter (Laird 59), Schofield, Harris (Hackett 90), Morison (Lisbie 71). Subs not used: Mildenhall, Grabban, Hackett. Att: 8,376.