McCain never said the war could last for 100years.
Libs always take it out of context—his point was that we should stay as long as it takes to win in Iraq. A snotty reporter asked the very stupid question, how long would that be (apparently too dumb to understand what McCain was saying,) so McCain replied sarcastically one hundred years—I am sure he was thinking (I have to be around these dumb turds in the press?)