What Hayes is struggling with is that most of the past 100 years of American wars have been unnecessary and morally dubious.
At Mass today, there was a prayer to honor those that died "protecting our freedom." Well, the tens of thousands of Americans who died in Korea, Vietnam, Iraq, Panama, Lebanon, Afghanistan and Iraq -- didn't die "protecting our freedom." They died for lots of reasons, some of which are far less noble. But it's pretty tough to reframe the invasion of Iraq as a war for our "freedom."
Where Hayes screwed up is that there's a difference between talking about the larger issue and the personal one.
No one wants to hear that their son died for a war crime.