It's because the job that they perform can be EXTREMELY DANGEROUS, and the likelyhood that they could suffer a serious injury, be killed on the job, or maim or kill someone else job is MUCH more likely than at your average white collar job.
You guys that think they are driving around forklifts at Long Beach and LA harbors haven't a clue. They are using 40-ton gantry cranes called spreaders to place containers into the hold and onto the deck of the ship. The containers are 20 or 40 ft wide. Guys are lowered onto the containers to put cones on them so that more containers can be stacked on a ship. Containers are stacked up to the heavens. If you make a mistake on this job you or someone you work with can lose their life.
This is the main reason they are paid "so much." I noticed none of you mention this in your "free market"-five-dollar an-hour-blue collar labor vs white collar jobs analogies.
BTW: I am a programmer and I would much rather sit on my ass in an air conditions office pounding out code for 80K a year then crawling around 25 above the hold of a cargo container on a crane for a 100K a year.