There have been many good suggestions on this thread of how to solve some of these problems, and in my opinion, the most effective ones involve having a way for troublesome students to be removed from the classroom so that those who want to learn can have an environment more suited for it. We have to give our teachers the respect they deserve by backing them up when they are faced with these assaults and threats. What are principles thinking when teachers can be attacked and the perp is back in class a few days later?
This is really not that complicated or difficult to solve. There need to be rules of behavior established, and penalties for infractions must be enforced. I have two sons in a public charter school that does this, and there are very few discipline problems there. If all schools followed this model, we could solve 90% of these disciplinary problems and teachers could return to doing what they most desire to do, be teachers. The remaining 10% can be dealt with by sending them to separate classes or schools that specialize in behavior problems, or they can be expelled. The important thing is to make an environment where the majority of students can concentrate on their lessons without being distracted by disruptive classmates. As Summer pointed out, lowering the age of compulsory attendance would allow this to happen. I actually favor eliminating compulsory attendance altogether; some kids just don't belong in school at all, especially if they cannot control their behavior.
It is impossible to solve all of society's ills overnight, but restoring discipline in the classroom is a good first step in the right direction.