German Bundesliga Roundup, May. 14
Eintracht Frankfurt was relegated from the Bundesliga with a 3-1 defeat at champion Borussia Dortmund on the last day of the season Saturday, while Wolfsburg ensured survival with a 3-1 win at Hoffenheim.
An own goal from Freiburg's Cedrick Makiadi was enough for Bayer Leverkusen to win 1-0 at Freiburg and secure second place in the Bundesliga and, with it, the automatic Champions League place.
Leverkusen finished ahead of third-place Bayern Munich, which beat Stuttgart 2-1 at home.
Hannover beat Nuremberg 3-1 to secure fourth place over Mainz, which defeated relegated St. Pauli 2-1 at home. Elsewhere, Kaiserslautern beat Werder Bremen 3-2, and Schalke lost 2-1 at Cologne.
Lucas Barrios missed a penalty for Dortmund in the first half but made amends with two goals after Sebastian Rode scored in the 46th minute by heading in Fanis Gekas' acrobatic pass.
Barrios scored in the 68th, sweeping the ball past Ralf Faehrmann after Felipe Santana's clever back heel.
An own goal in the 72nd from Marco Russ - under pressure from Robert Lewandowski - ended Frankfurt's hopes after Ralf Faehrmann had saved from Barrios.
Frankfurt's Marcel Titsch-Rivero was sent off in the 80th, just a minute after coming on as substitute, for bringing Marcel Schmelzer down in the penalty area.
Faehrmann saved the penalty from Dede - playing in his last game for Dortmund after 13 years at the club - before Barrios scored his 16th goal of the season with a header from Lewandowski's cross in the final minute.
Wolfsburg got off to a bad start at Hoffenheim when Brazilian midfielder Diego was dropped from the squad by coach Felix Magath for reacting badly to the news he was a substitute.
The visiting side lacked urgency in the first half and was punished shortly after the break when Roberto Firmino scored after an impressive through ball from Sebastian Rudy in the 49th.
Frankfurt was leading in Dortmund at the time, and Moenchengladbach in Hamburg, meaning Wolfsburg had to score to have any chance of survival.
Mario Mandzukic led the revival, lifting the ball over Tom Starke to equalize in the 60th, and meeting Ashkan Dejagah's corner with a powerful header in the 73rd.
Brazilian striker Grafite made it 3-1 five minutes later when the ball rebounded off his chest.
In Hamburg, Juan Arango scored with a free kick from 23 meters in the 41st, after Elijero Elia had a goal ruled out for the home side for an off-the-ball foul by Aenis Ben-Hatira on Tony Jantschke.
Ben-Hatira equalized in the 71st after a great run by Dutch striker Ruud van Nistelrooy, playing in his last game for Hamburg.
Japan striker Shinji Okazaki gave Stuttgart a deserved lead in Munich in the 24th, after Bayern striker Miroslav Klose had missed an empty goal from only one meter.
Mario Gomez equalized when he scored against his former club in the 37th, Arjen Robben picking him out to easily slot past Sven Ulreich. Gomez finished as the season's topscorer with 28 goals.
Bastian Schweinsteiger headed his fourth goal of the season from Toni Kroos' free kick in the 71st.
Bayern had been hoping for Leverkusen to slip at Freiburg but will settle for a Champions League qualifying spot.
In Hannover, Nuremberg striker Julian Wiessmeier scored on his Bundesliga debut in the 25th, five minutes before Karim Haggui equalized from close range.
Konstantin Rausch's curling shot made it 2-1 to the home side in the 60th, before Didier Ya Konan added a penalty in the 78th.
A penalty from Mainz striker Andre Schuerrle - playing in his last game before moving to Bayer Leverkusen - canceled Matthias Lehmann's first half goal for St. Pauli, before Sami Allagui completed the comeback with eight minutes remaining.