It doesn't matter. You don't dismantle the Bill of Rights just because you have to delay the military salaries for one month, until Congress rewrites the bill.
The problem with Obama is that Congress knows he's, for lack of a better word, a coward. So they know that they can push his hand how much they want, because he won't do anything dramatic to react and fight back. That's why Obama has kept losing all his negotiations or he always "compromised" for the other side's sake.
So bottomline, he should've taken a stand and vetoed it, and let that be a lesson for Congress for next time. But he didn't do that. And if you're going to say "but Congress would've passed it anyway with 2/3 of the vote" - well then, even more of a reason to veto it and show his supporters that at least tried to stop it, but Congress was solely at fault for passing it. Since he didn't, Obama doesn't get to have any excuses in this case.