It also has multiscale, one of the strongest abilities in the game.
Dragonite's weakness is not those 4x weakness to ice or whatever. Try using those weaknesses against it. You'll just get owned by the weakness policy.
Its weaknesses are status and stealth rock. Good thing Dragonite can learn defog and heal bell. =| But then he's vulnerable to chip damage. Well, good thing he has roost so he can turn on multiscale whenever he wants. So I guess his real weakness is there isn't enough room to learn more than 4 moves per Dragonite. Also, when it comes to actual battle, he's outclassed by other pokemon more specialized than him.
There is very, very few pokemon you can make a real 5-man team with. Almost none have enough moves or coverage to justify it. You'll normally end up with a team really good at doing one thing and really bad at everything else or their stats are so bloody crap that the enemy wouldn't even care. Dragonite is one of the few who not only can boost himself with dragon dance, swords dance, and weakness policy but he can also support with defog and heal bell along with dual screens.
He has priority in extreme speed. The best priority move in the game. Look at all the other moves he has at his arsenal:
Hurricane, Dragon Tail, Outrage, Ice Beam, Thunderbolt, Earthquake, Flamethrower, Fire Blast, Focus Blast, Sky Drop, Stone Edge, Rock Slide, Power Up Punch, Waterfall, Surf, Dragon Pulse, Iron Tail, Draco Meteor, Outrage, Superpower, Thunder / Ice / Fire Punch, Iron Head, Aqua Tail
Those are just the great moves. There's still substitute and all that other stuff.
Show me another pokemon you can make a great 5-man team with better than that and you'd have shown me Mewtwo or Arceus.